Regular Expression
,正则表达式,简写为RegExp
。
BRE
:Basic RegExp,基本正则表达式ERE
:Extend RegExp,扩展正则表达式PCRE
:Perl Compatible RegExp,Perl兼容的正则表式
基本正则表达式
字符匹配
匹配次数
位置锚定
位置锚定:定位出现的位置
分组
分组:\(\)
将一个或多个字符捆绑在一起,当作一个整体进 行处理,如:\(root\)\+
分组括号中的模式匹配到的内容会被正则表达式引擎记录于 内部的变量中,这些变量的命名方式为: \1
, \2
, \3
, …\1
表示从左侧起第一个左括号以及与之匹配右括号之间的 模式所匹配到的字符
示例:
\(string1\+\(string2\)*\)
\1
:string1\+\(string2\)*
\2
:string2
后向引用:引用前面的分组括号中的模式所匹配字符,而非模式本身
或者
\|
示例:
a\|b
: a或b
C\|cat
: C或cat
\(C\|c\)at
:Cat或cat
扩展正则表达式
egrep
== grep -E
egrep其实很简单,就是把grep里的斜线去掉了,不过有些还没有去掉。
字符匹配:
次数匹配:
位置锚定:
分组:
或者:
|
示例: