正则表达式

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了正则表达式相关的知识,希望对你有一定的参考价值。

讲师说这是个难点,所以就把这部分写一下,本人认为通过习题理解会更深刻一些。

1.找出/etc/passwd中的两位或三位数

技术分享


注意:在做这道题时,一定要锚定词首词尾,锚定词尾因为四位数包含三位数,如下图所示

技术分享

锚定词首是因为万一所建的用户名中包含数字,如下图所示。

技术分享

2.添加用户bash、testbash、basher、sh、nologin(其shell为/sbin/nologin),找出/etc/passwd用户名同shell名的行。

技术分享

在做这道题的时候,我就忽视了下面的情况,主要是当时对词首词尾锚定理解不够深刻。要避免这种情况的出现,也可以加个/来区别。

技术分享


3.找出/etc/rc.d/init.d/functions文件中行首为某单词(包括下划线)后面跟一个小括号的行

技术分享

注意:表示图形小括号的时候要加转义字符\。因为这个,技术分享


4.将此字符串:welcome to magedu linux 中的每个字符去重并排序,重复次数多的排到前面

技术分享

这个题的难点是怎样把这句话以单个字母单行显示,这个会了,其他就小菜一碟。


5.使用egrep取出/etc/rc.d/init.d/functions中其基名

技术分享

注意:^放在括号里是“非”的意思放在括号外边是行首的意思。


6.统计last命令中以root登录的每个主机IP地址登录次数

技术分享

注意:先把root截取出来,再取ip地址。


7.使用正则表达式的时候,使用扩展表达式比较方便,因为很多地方不用加转义字符。另外,"."包含大小写字母,数字和下划线。




以上是关于正则表达式的主要内容,如果未能解决你的问题,请参考以下文章

PHP 正则表达式总结

正则表达式

正则表达式

正则表达式“或“的使用

正则表达式 验证数字格式 非负数 小数点后保留两位 数字正则 double正则

JS正则表达式详解