正则表达式引擎

前端之家收集整理的这篇文章主要介绍了正则表达式引擎前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

1、grep

grep [options] PATTERN [FILE...]

-v:反向搜索显示出没有出现“搜索模式”的哪一行

-o:仅显示被模式匹配到的字符串

-q:搜索模式匹配后结果不显示,哪怕结果没有搜索

-A:显示搜索模式所在行后面的num行

-B:显示搜索模式所在行前面的num行

-C:显示搜索模式所在行后面的num行,和后面的num行

-E:使用扩展怎着表达式

-- colour==auto


基本正则表达式元素符:

1、字符匹配

. :匹配任意单个字符

[]:匹配指定范围内的任意单个字符

[^]:匹配指定范围外的任意单个字符

[:lower:],[:upper:],[:alpha:],[:digit:],[:alnum:],[:punnct:]

2、次数匹配

*:前边字符任意次数

.*:任意单个字符任意多次

\?:前边单个字符0―1次

\+:前边单个字符至少1次

\{m}:前边单个字符m次

\{m,n\}:前边单个字符m到n次

\{m,\}:前边单给字符至少m次

3、锚点匹配

^:匹配模式搜索到的在行首的字符

$:匹配模式搜索到的在行尾的字符

^[[:space:]]$:匹配空行

\<:匹配模式搜索到的在词首的字符

\>:匹配模式搜索到的在词尾的字符

4、分组

\( \):将单个字符或者多个字符捆绑在一起当做整体处理

后向引用:引用前面分组括号所引用的内容

注:分组括号中模式匹配到的内容会被内容会被保存在grep内部的变量中,这些变量的命名方式为:\1,\2,,,,等等。

\1:左起第一个括号到与之相对应的括号完,之间的被模式所搜索到的字符



扩展正则表达式:egrep

grep -E=egrep

1、字符匹配

. :匹配任意单个字符

[]:匹配指定范围内的任意单个字符

[^]:匹配指定范围外的任意单个字符

[:lower:],[:punnct:]

2、次数匹配

*:前边字符任意次数

.*:任意单个字符任意多次

?:前边单个字符0―1次

+:前边单个字符至少1次

{m}:前边单个字符m次

{m,n}:前边单个字符m到n次

{m,}:前边单给字符至少m次

次数匹配与基本正则表达式的区别是不用转义字符\

3、锚点匹配

^:匹配模式搜索到的在行首的字符

$:匹配模式搜索到的在行尾的字符

^[[:space:]]$:匹配空行

\<:匹配模式搜索到的在词首的字符

\>:匹配模式搜索到的在词尾的字符

4、分组

( ):将单个字符或者多个字符捆绑在一起当做整体处理

后向引用:引用前面分组括号所引用的内容

5、或者

a|b

eg:C|cat 匹配左边或右边

(C|c)at:匹配Cat或者cat


fgrep:不支持正则表达式,按给的的字符来匹配

猜你在找的正则表达式相关文章