The P code returns a value if it matches one of the specified patterns. Patterns can be combinations of numeric and alphabetic characters and literal strings.
If the value does not match any of the patterns, the processor returns null.
Input conversion does not invert. It simply applies the pattern matching to the input data.
P(element){;(element)}...
element is one or more of the following forms:
nN tests for n numeric characters.
nA tests for n alphabetic characters.
nX tests for n characters.
'literal' tests for the presence of the literal.
Note: When n is 0 (zero), element tests for any number of the specified characters.
The code P(3N'-'2N'-'4N) tests for data that has three numerics, a hyphen, two numerics, a hyphen, and four numerics. The processor returns data that matches this pattern exactly:
Data | Result |
---|---|
123-45-6789 | 123-45-6789 |
ABC456 | |
ASD-34-4567 | |
123-45-67890 | |
783-49-7263 | 783-49-7263 |
W3-45-67J3 |
The following tests for one of three patterns: P(1N3A3N);(3A3N);(3N3A). The processor returns any value that matches any one of these patterns:
Data | Result |
---|---|
ABCDEFGHIJKLMNO | |
1ABC234 | 1ABC234 |
ABC456 | ABC456 |
0987654321 | |
123VBN | 123VBN |
WDV648 | WDV648 |
3EDC000 | 3EDC000 |
471CIS | 471CIS |
76TYHIU6T | |
1A2B3C4D | |
6KJS947 | 6KJS947 |