码迷,mamicode.com
首页 > 其他好文 > 详细

正则表达式

时间:2018-10-05 19:22:35      阅读:150      评论:0      收藏:0      [点我收藏+]

标签:...   有一个   strong   就是   开头   正则表达   roo   code   grep   

任意一个字符 . 和 重复字符** * **

  1. 与shell中的通配符 * 不同,正则表达式中的 * 代表:重复前一个字符,0到n次。
  2. . 代表:一定有字符。
    例如,假设我们需要找出g??d 的字符串,即以g字母开头d字母结尾的字符串,我们可以这样做:
\[root@pulp ~\]# grep -n ‘g..d‘ test.txt

假如我们要找出 至少含有一个字母 o 的字符串,应该怎么做?

\[root@pulp ~\]# grep -n ‘go*d‘ test.txt

事实上,上面的表达式是没有用的。因为 * 代表重复前一个字符0个到n个,也就是说,它会把所有内容都取出来。这显然不符合我们的意图。正确写法如下:

\[root@pulp ~\]# grep -n ‘goo*d‘ text.txt

这时,因为 * 号代表将前一个字符重复0个到n个,所以,第一 个字母 o 肯定存在,这样我们就能找出,凡含有,o , oo , ooo , .... 的一系列字符串的行。

正则表达式

标签:...   有一个   strong   就是   开头   正则表达   roo   code   grep   

原文地址:https://www.cnblogs.com/pulp/p/9745530.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!