脱字符(^)放在方括号([])外面表示匹配以方括号([])里面的任何字符开头的字符串;
脱字符(^)放在方括号([])里面表示匹配包含有任何不在方括号([])里面的字符的字符串。
- SQL> select 1 x from dual where regexp_like('0a','^[0-9]');
-
- X
-
- 1
-
- SQL> select 1 x from dual where regexp_like('1a','^[0-9]');
-
- X
-
- 1
-
- SQL> select 1 x from dual where regexp_like('a0','^[0-9]');
-
- X
-
-
- SQL>
-
- '^[0-9]'匹配以数字开头的。
-
-
-
- SQL> select 1 x from dual where regexp_like('111','[^0-9]');
-
- X
-
-
- SQL> select 1 x from dual where regexp_like('1a11','[^0-9]');
-
- X
-
- 1
-
- SQL> select 1 x from dual where regexp_like('111a','[^0-9]');
-
- X
-
- 1
-
- SQL>
-
- '[^0-9]'匹配包含有不是数字的。
-
- [0-9]等价于[:digit:]