SQL文本如下:
-- 学生表 Student
insert into Student values('01' , '赵雷' , '1990-01-01' , '男');
insert into Student values('02' , '钱电' , '1990-12-21' , '男');
insert into Student values('03' , '孙风' , '1990-05-20' , '男');
insert into Student values('04' , '李云' , '1990-08-06' , '男');
insert into Student values('05' , '周梅' , '1991-12-01' , '女');
insert into Student values('06' , '吴兰' , '1992-03-01' , '女');
insert into Student values('07' , '郑竹' , '1989-07-01' , '女');
insert into Student values('08' , '王菊' , '1990-01-20' , '女');
-- 教师表 Teacher
insert into Teacher values('01' , '张三');
insert into Teacher values('02' , '李四');
insert into Teacher values('03' , '王五');
字符匹配
- 匹配单个数字
[0-9]
- 匹配单个小写字母
[a-z]
- 匹配单个大写字母
[A-Z]
- 匹配单个汉字
[\u2E80-\u9FFF]
- 匹配单个空格
[ ]
- 匹配符号
[\-\[\]~`!@#$%^&*()_+={}|\:";'<>?,./]
- 匹配换行符
[\n]
- 匹配单个偶数
[02468]
- 匹配单个奇数
[13579]
- 匹配指定的数字
[456]
- 匹配单个大小写字母
[a-zA-Z]
- 匹配单个数字或字母
[0-9a-zA-Z]
- 匹配数字、大小写字母、汉字
[0-9a-zA-Z\u2E80-\u9FFF]
反向匹配
- 不匹配方括号中的字符
[^0-9]
- 不匹配汉字
[\u2E80-\u9FFF]
- 不匹配数字和字母
[^0-9a-zA-Z]
简写
- 匹配单个数字简写
[\d]
- 匹配除了换行符以外的任意单个字符
.
量词
- 匹配n个连续字符
[a-zA-Z]{4}
- 匹配n~m个连续字符
[a-zA-Z]{4,6}
- 至少出现n次
[a-zA-Z]{5,}
- 匹配连续出现2次“-01”的部分
(-01){2}
逻辑或
- 逻辑或
张.|李.
预查
- 肯定预查
(?<=')[\u2E80-\u9FFF]{2,}(?=')
- 否定预查
(?<!')[\u2E80-\u9FFF]+(?!')