正则表达式

. 匹配除换行符之外的任意字符
? 匹配前面的子表达式零次或一次
+ 匹配前面的子表达式一次或多次
* 匹配前面的表达式零次或多次

^ ^abc,匹配以abc开头的字符串
$ abc$,匹配以abc结尾的字符串

[] 字符集合中任一个

[[:alpha:]] 任何字母
[[:digit:]] 任何数字
[[:space:]] 任何白字符(空格、制表符)
[[:punct:]] 任何标点符号
[[:lower:]] 任何小写字母
[[:upper:]] 任何大写字母
[[:punct:]] 任何标点符号

mysql:rlike
字母不区分大小写

--查找以a开头的姓名
select * from stu
where name rlike '^a';

--找到以字母开头姓名
select * from stu
where name rlike '[1]';

--以数字开头
select * from stu
where name rlike '[2]';

Oracle:
where regexp_like(字段,正则表达式)
字母区分大小写

--找到以小写字母开头的
select * from stu
where regexp_like(name,'[3]');:

--找到以大写字母开头的
select * from st
where regexp_like(name,'[4]');

--找到以字母开头并且以字母结尾(包含单个字母)
select * from stu
where regexp_like(name,'[5].*[a-z,A-Z]$') or regexp_like(value,'[a-z,A-Z]');

--找到字符串只包含字母
select * from exp
where regexp_like(value,'[6]*$');

.在数据中查找仅仅包含数字的数据
select * from exp
where regexp_like(value,'[7]*$');

select * from exp
where regexp_like(value,'[8]*$');

.在数据中查找包含标点符号的数据
select * from exp
where regexp_like(value,'[[:punct:]]');

.在数据中查找以字母开头,数字结尾的数据
select * from exp
where regexp_like(value,'[9].*[0-9]$');

.在数据中查找以字母开头,字母结尾并包含数字的数据
select * from exp
where regexp_like(value,'[10]') and regexp_like(value,'[0-9]+') and regexp_like(value,'[a-zA-Z]$');

.在数据中查找全为大写字母的数据
select * from exp
where regexp_like(value,'[11]*$');

.在数据中查找以数字开头,并包含小写字母的数据
select * from exp
where regexp_like(value,'[12]') and regexp_like(value,'[[:lower:]]+')

.在数据中查找仅仅包含数字、空格和字母的数据
select * from exp
where regexp_like(value,'[0-9]+')
and regexp_like(value,'[ ]+')
and regexp_like(value,'[a-zA-Z]+');

select * from exp
where regexp_like(value,'[13]+$')

select * from exp
where regexp_like(value,'[14]+$')
and regexp_like(value,'[0-9]+')
and regexp_like(value,'[ ]+')
and regexp_like(value,'[a-zA-Z]+');

.在人员表中查找人员编号为奇数的人
select * from emp
where empid like '%1' or empid like '%3'
or empid like '%5' or empid like '%7'
or empid like '%9';

select * from emp
where regexp_like(empid,'[15]$');


  1. a-z ↩︎

  2. 0-9 ↩︎

  3. a-z ↩︎

  4. A-Z ↩︎

  5. a-z,A-Z ↩︎

  6. a-z,A-Z ↩︎

  7. 0-9 ↩︎

  8. [:digit:] ↩︎

  9. a-z,A-Z ↩︎

  10. a-z,A-Z ↩︎

  11. [:upper:] ↩︎

  12. 0-9 ↩︎

  13. a-zA-Z0-9 ↩︎

  14. a-zA-Z0-9 ↩︎

  15. 13579 ↩︎

posted @ 2019-10-28 18:45  心脏鼓点  阅读(311)  评论(0编辑  收藏  举报