标签:中文 特殊字符 多重 aabb 大小写 tin 空格 exp 次数
1.普通字符
字母,数字,汉字,下划线,没有特殊意义的标点符号。匹配与之一样的字符
2.简单的转义字符
\n | 换行 |
\t | 制表符 |
\\ | 本身 |
^,\$,\{,\}等等 | 匹配本身 |
?3.标准字符集合
能够与多种字符匹配的表达式
注意区分大小写,大写是相反的意思
\d | 匹配0-9之间的任意一个数字 |
\D | 匹配非数字一个字符 |
\w | 任意一个字母,数字或者下划线。 |
\W | 跟上面相反任意一个除了字母,数字或者下划线以外的符号。 |
\s | 匹配任意一个空白字符。如:空格,制表符,换行符等 |
. | 可以匹配任意一个字符(除了换行符)。如果要匹配换行符在内的所有字符,用[\s\S] |
4.自定义字符集合
[]方括号匹配方式,能够匹配方括号中任意一个字符
[abc]表示a或b或c
[ab5@] | 匹配"a","b","5"或者"@"中任意一个 |
[^ab5@] | 匹配"a","b","5"或者"@"之外任意一个 |
[a-k] | 匹配“a”到"k"之间任意一个字母 |
[1-7] | 匹配1,2,3,4,5,6,7任意一个。[1-7]=[1234567] |
[^1-6A-k] | 匹配1到6,A到K之外的任意一个字符 |
”-“表示简写中间的。
特殊符号如果在中括号中,将失去特殊意义,除了^, -
标准字符集合,除了小数点外,如果被包含在中括号,自定义字符集合将包含该集合。如:
? [\d.-+]将匹配:数字,小数点,+,-
5.量词
修饰匹配次数的特殊符号
{n} | 表达式重复n次 |
{m,n} | 至少重复m次,至多重复n次 |
{m,} | 至少重复m次 |
? | 相当于{0,1},重复1次或者0次 |
+ | 相当于{1,},重复至少1次 |
* | 相当于{0,},不出现或者重复任意次 |
例如:
\d{6} 匹配连续的6个数字
\d\d{6} 匹配连续的7位数字,因为量词只能对前面的一个表达式生效
(\d\d){6} 匹配连续的12个数字。用括号括起来,将前面看成一个表达式
量词匹配默认是贪婪模式(尽可能匹配更多的字符):
如:"\d{3,6}"匹配"1234567"中的前6个字符。
非贪婪模式,只需要在后面加一个?
如:"\d{3,6}?"匹配"1234567"中的"123"和"456"
6.字符边界
本组标记匹配的不是字符而是位置,符合某种条件的位置
^ | 与字符串开始的地方匹配 |
$ | 与字符串结束的地方匹配 |
\b | 匹配一个单词的边界 |
如:
"^a"匹配"aabbccaa"中的第一个字符
"a$"匹配"aabbccaa"中的最后一个字符
"\ba"匹配"aabbccaa"中的第一个字符
"a\b"匹配"aabbccaa"中的最后一个字符
"\baa"匹配"aacc aadd aaee"中的所有"aa",\b匹配的是边界上的都可以
7.正则表达式的匹配模式
\A | 只匹配第一行的第一个 |
\Z | 只匹配最后行最后个 |
8.选择符和分组
| | 匹配符号左边的或者右边的 |
()捕获组 | |
(?:Expresion)非捕获组 |
"aa|bb"可以匹配“aa”或者"bb".
小括号。"([a-z]{2})\2" 将匹配到的字符重复一遍再匹配
9.预搜索
(?=exp) | 断言自身出现的位置的后面能匹配exp |
(?<=exp) | 断言自身出现的位置前面能出现exp |
(?!exp) | 断言自身出现的位置的后面不能匹配exp |
(?<!exp) | 断言自身出现的位置前面不能出现exp |
"[a-z]+(?=ing)" 匹配以"ing"结尾的字符串。如"eating"中的"eat",但是不包含"ing"
"[a-z]+(?=\d)"匹配所有以数字结尾的单词
10.MySql中like模糊查询
在 where like 的条件查询中,SQL 提供了四种匹配方式(不是正则)。
1. %:表示任意 0 个或多个字符。可匹配任意类型和长度的字符,有些情况下若是中文,请使用两个百分号(%%)表示。
2. _:表示任意单个字符。匹配单个任意字符,它常用来限制表达式的字符长度语句。
3. []:表示括号内所列字符中的一个(类似正则表达式)。指定一个字符、字符串或范围,要求所匹配对象为它们中的任一个。
4. [^]:表示不在括号所列之内的单个字符。其取值和 [] 相同,但它要求所匹配对象为指定字符以外的任一个字符。
5. 查询内容包含通配符时,由于通配符的缘故,导致我们查询特殊字符 “%”、“_”、“[” 的语句无法正常实现,而把特殊字符用 “[ ]” 括起便可正常查询。
标签:中文 特殊字符 多重 aabb 大小写 tin 空格 exp 次数
原文地址:https://www.cnblogs.com/shun-w/p/12073824.html