1.’^’ :脱字符号
例子:
^cat :匹配的是以c作为一行的第一个字符,a为第二个字符,t为第三个字符的文本
2.‘[]’:字符组 匹配若干字符之一
例子:
h[ea]llo: 匹配的是,h,接着是是e或a,接着是l,再接着是l,再接着是o的文本
[^…]取代[….] :匹配的是任何未列出的字符
例子:
[^1-6]: 匹配的是除了1到6的任何字符
3.‘|’ :多选结构。 匹配任意子表达式
例子:
Bob | Bobhai :匹配其中任意一个的正则表达式
yao(h|H)ai: 匹配出来的文本要么是yaohai,要么是yaoHai .注:yao[h|H]ai 不符合要求,这里的‘|’和‘h’ 和 ‘H’ 都是普通字符
字符组与多选结构的区别:
一个字符组只能匹配目标文本的字符,而每个多选结构自身都是完整的正则表达式,都可以匹配任意长度的文本。
4.‘-i’忽略大小写
5.‘.’ 匹配任意字符的字符组
例子:
202.03.3:可以匹配字符串20210313,或20222313等。
6.“‘\<’ and ‘\>’”单词分界符
‘\<’:匹配单词的开头
‘\>’: 匹配单词的结尾
例子:
\<cat\>:意思为“匹配单词的开头位置,然后是c.a.t这三个字母,最后匹配单词的结束位置“。
7.‘-’ 连字符
在字符组内表示范围:例:[1-9]表示匹配1到9中的任意一个字符,而 1-9 中‘-’和‘1’,‘9’都是普通字符
8.‘?’ 可选项元素
‘?’:可以不出现,也可以只出现一次(单次可选)
例子:
u? :可以匹配 apple ,也可以匹配return
u?r :不可以匹配apple因为没有‘r’,可以匹配enter,‘u’在r之前可有可没有。
9.‘+’ ‘*’ 重复出现
‘+’:之前紧邻的元素可以出现一次或多次
‘*’:之前的元素出现任意多次,或者不出现
‘+’和‘*’的区别:
‘*’匹配尽可能多的次数,如果实在无法匹配,匹配不到不要紧。‘+’匹配尽可能多的次数,但是如果一次都没有匹配到,就报告失败。
10.’\’ 转义字符
\后跟元字符符号,将元字符看作普通字符看待(特殊的含‘\’元字符组合除外).
例:
\([a-z]+\) :左边反斜杠转义字符把左括号‘(’ 转义为普通字符,右边饭斜杠把右括号‘)’转义之后。整个正则表达式的作用就是匹配括号能的单词(小写字母,‘+’之前紧邻的元素可以出现一次或多次)
未写全,请谅解。