正则表达式
(1)匹配次数
*
:匹配前一个字符的任意次(0次至无数次)
\?
: 匹配前一个字符0次或1次
\+
: 匹配前一个字符1次或者多次
\{n,0\}
=\{n\}
:匹配前一个字符至少出现n次
\{n,m\}
:匹配前一个字符至少出现n次,且最多出现m次。
\{0,n\}
=\{,n\}
:匹配前一个字符至多出现m次的内容
匹配至少出现3次“root”的字符。
(2)匹配字符
.
: 任意一个字符
[]
:指定的任意一个字符
[^]
:指定范围之外的任意一个字符
.*
:匹配任意个数的任意字符
.\?
: 匹配任意字符出现0次或1次
[]*
:匹配固定格式的字符出现任意次
[:digit:]
= 数字
[:lower:]
=小写字母
[:upper:]
=大写字母
[:alpha:]
=所有字母
[:alnum:]
=数字和字母
[:punct:]
=所有标点符号
[:space:]
=空格
匹配空格开头的字符
(3)位置界定
\<
:词首锚定 ,用于 单词模式的左侧
>/
:词首锚定 ,用于 单词模式的左侧
\<\>
:匹配完整单词
^
:行首锚定;用于模式的最左侧
$
:行尾锚定;用于模式的最右侧
(4)分组引用
\(\) .* \1
\(\)
:将一个或多个字符捆绑在一起,当做一个整体进行处理
\1
:模式从左侧起,第一个左括号以及与之匹配的右括号之间的模式所匹配到的字符;(可以由 \2 \3)