Hi - As per the Oracle documentation (database development guide) the + regular operator is described as follows:
Matches one or more occurrences of the preceding subexpression (greedy).
Example: The expression a+ matches the strings a, aa, and aaa, but does not match ba or ab.
But when I run the following SQL:
select 1 from dual where regexp_like ('ab','^a+');
Output: 1
I was expecting NULL as it's not 'aa' (the + operator should match for the preceding subexpression which is a).
Can someone please explain this behavior?