加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

正则表达式

发布时间:2020-12-13 22:22:52 所属栏目:百科 来源:网络整理
导读:1、正则表达式是Linux中很好用的一种文本处理工具。下面简单的介绍下用法和规则。 参数介绍(经常用的): grep –n //处理输出的过程中对文本的位置行号进行打

1、正则表达式是Linux中很好用的一种文本处理工具。下面简单的介绍下用法和规则。

参数介绍(经常用的):

grep –n //处理输出的过程中对文本的位置行号进行打印。

grep –I //在查找的过程中忽略查找内容的大小写。

grep –v //在查找的过程中忽略排除不包含查找条件的内容,就是反向查找的意思。

另外在grep中有许多的通配符可以提供给我们查找使用。

.:表示任意一个字符。

*:表示任意一个字符出现多少次。

.*:代表的就是任意多个字符的意思了。

{n,m}:前面的字符出现最少n次,最多m次。

^:定位在行首。

$:定位在行尾。

?:前面的字符出现一次或者0次。

&;word&;:查找的内容必须以单词的形式出现,其中的<符号可以用b来进行代替。

(…..):分组出现。

2、扩展正则表达式

{m,n}:匹配前面的字符出现最少m次,最多n次。

+:匹配前面的字符最少出现一次。

*:前面的字符出现任意次。

?:匹配前面的字符出现出现0次或者是1次。

定位在行首和行尾的用法是和标准的grep是一样的在这里就不在进行赘述。

--------------------------------------------------------------------------------------------------------------------

下面简单的介绍几个例子进行详细的说明。

练习:
1、显示/proc/meminfo文件中以不区分大小的s开头的行;
grep –i^s /proc/meninfo
2、显示/etc/passwd中以nologin结尾的行;
grep &;nologin&;$ /etc/passwd
3、显示/etc/inittab中以#开头,且后面跟一个或多个空白字符,而后又跟了任意字符的行;
grep“^#[[:space:]]*.*” /etc/inittab

grep“^#[[:space:]]+.*” /etc/inittab 4、显示/etc/inittab中包含了:一个数字:(即两个冒号中间一个数字)的行; grep :[0-9]: /etc/inittab 5、显示/boot/grub/grub.conf文件中以一个或多个空白字符开头的行; grep^[[:space:]]{1,}.*" /boot/grub/grub.conf grep -E --color"^[[:space:]]{1,}.*" /boot/grub/grub.conf 6、显示/etc/inittab文件中以一个数字开头并以一个与开头数字相同的数字结尾的行; grep “(^[0-9]).*1$” /etc/inittab grep"[0-9]{1,3}."{3}.[0-9]{1,3}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读