SAP ABAP Advanced Cookbook
上QQ阅读APP看书,第一时间看更新

Using regex as an IF statement

In this recipe, we will write a simple program that will function as an if statement. A simple find regex statement will be used.

Getting ready

We will first write an if statement that will check if the value of a parameter variable field1 has the value equal to ABC, DEF, or CDE. In case the value is equal to any of the three, the message Field Value is Valid is displayed. We will then see the equivalent regex.

Getting ready

How to do it...

For replacing the if statement with find regex statement, proceed as follows:

  1. Instead of the if statement, we will write a find regex statement along with the regex '[ABC|CDE|DEF]'.
  2. After the statement, the sy-subrc is checked, and the appropriate messages are written.
    How to do it...

How it works...

We have used an OR (|) operator within the find statement. A match is found if the value of the three-character field1 is equal to any of the three values specified. In this case, sy-subrc is equal to zero, and the success message is then displayed.

There's more...

Suppose we need to ignore the case. Say the input is to be compared such that there is no difference between ABC, abc, and ABc. In such a case, we may simply add ignoring case to the statement, as shown in the following screenshot:

There's more...