Grep正则表达式

1670人浏览 / 0人评论 / 添加收藏

Grep可以说是一个非常好用,而且经常使用的工具。

但是在使用的grep的时候,经常会遇到一些问题。

最近在进行数据的剔除,所以使用grep的正则表达式进行处理。

正则表达的规则如下:

() 括号中是子正则表达式,也就是将子表达式组成一个组
+ 前面的内容出现1次或者多次
{} 这个括号有很多功能{a,b}表示前面内容出现a次到b次{a,}表示最少a次{a}表示出现a次{,b}表示最多b次
[] 该括号的符号选择一个就算满足正则要求
^ 该符号在[]出现时表示除[]内以外的符号,在最开始出现时表示以其后面的规则开头

其他的我也不多说了,可以自行去查阅。

我用的是ubuntu grep版本是2.25然后使用的时候出现了很奇怪的问题,比如加上+真的就匹配加号,而不是前面内容多次出现。
 

后来发现grep的正则表达式是要加上反斜杠才表示是正则表达式的符号,所以+ () 等等前面都要加上\ 但是[]却不用。

不得不说好像和普通的正则反了。但是至少这样能用了,所以如果大家有谁遇到类似的问题,正则规则无法识别的时候,试试在这些符号前面加上\。

全部评论