No match with regular expression [:print:]
[cl_abap_regex] [expressions] [FIND] [match] [match with] [no expression] [no match] [regex] [Regular] [regular expression] [Replace] [Unicode]
- Incorrect matches when using find_next( )Symptom If you use anchor characters, the methods find_next( ) and replace_next( ) of class cl_abap_matcher find additional, incorrect matches. Other terms Regular expressions, beginning of line, cl_abap_regex, match, regex, regexp Reason...
Symptom
In a regular expression, the character classes [:print:] and [:graph:] do not match certain non-Latin characters.
Other terms
Regular expressions, regex, Unicode, match, FIND, REPLACE, cl_abap_regex
Reason and Prerequisites
The character classes [:print:] and [:graph:] were calculated incorrectly for displayable Unicode characters, which belong to at least one of the classes [:alpha:], [:digit:] or [:punct:]. As a result, the system classified the numeric characters in particular as displayable, which was incorrect.
Solution
If the error description above applies to your situation, install the current version of the ABAP kernel. For the lowest patch level for the relevant release, see the section “Support Package patch level”.
(Patch text: ‘fixed [:print:] for non-latin chars’)
Check SAP Service Marketplace to see whether the patch is already available for your platform, and apply it in accordance with Note 19466.