正则表达与扩展正则表达

说到正则表达式那就不得不说grep命令:

1.grep命令的作用:grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。2.格式
2.命令格式 :grep [options]
3.主要参数:
grep-c:只输出匹配行的计数。

正则表达与扩展正则表达
grep-i:不区分大 小写(只适用于单字符)。

正则表达与扩展正则表达

grep-n:显示匹配行及 行号。

正则表达与扩展正则表达


-v:显示不包含匹配文本的所有行。

正则表达与扩展正则表达

grep -o 仅显示匹配到的字符串

正则表达与扩展正则表达

正则表达式

grep正则表达式元字符集:
 ^ 锚定行的开始 如:‘^grep’匹配所有以grep开头的行。
$ 锚定行的结束 如:’grep$’匹配所有以grep结尾的行。
. 匹配一个非换行符的字符 如:’gr.p’匹配gr后接一个任意字符,然后是p。
* 匹配零个或多个先前字符 如:’*grep’匹配所有一个或多个空格后紧跟grep的行。 .*一起用代表任意字符。
 [] 匹配一个指定范围内的字符,如'[Gg]rep’匹配Grep和grep。
[^] 匹配一个不在指定范围内的字符,如:'[^A-FH-Z]rep’匹配不包含A-R和T-Z的一个字母开头,紧跟rep的行。
\(..\) 标记匹配字符,如’\(root\)’,root被标记为1个整体。
 \< 锚定单词的开始,如:’\<匹配包含以grep开头的单词的行。
\> 锚定单词的结束,如’grep\>’匹配包含以grep结尾的单词的行。
q\{m\} 重复字符q,m次,如:’0\{3\}’匹配包含3个0的行。
q\{m,\} 重复字符q,至少m次,如:’0\{3,\}’匹配至少有3个0的行。
q\{m,n\}重复字符q,至少m次,不多于n次,如:’0\{1,10\}’匹配1–10个0的行。
 \b 单词锁定符,如: ‘\bgrep\b’只匹配grep。

  [::alnum] : 数字字符 [:digit:] : 数字字符 [:punct:] : 标点符号字符
[:alpha:] : 字母字符 [:graph:] : 非空格字符  [:space:] : 空格字符
           [:blank:] : 空格与定位字符 [:lower:] : 小写字母字符 [:upper:] : 大写字母字符
[:cntrl:] : 控制字符 [:print:] : 可显示的字符 [:xdigit:] : 16进制数字

扩展正则表达式

.:匹配任意单个字符

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

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

匹配次数:

*:匹配前面的字符任意次

.*:匹配任意字符

\? 匹配前面的字符1次或0次

+:匹配前面的字符至少1次

{m,n}:匹配前面字符

 


原创文章,作者:李先生,如若转载,请注明出处:http://www.178linux.com/84044

(0)
李先生李先生
上一篇 2017-08-07
下一篇 2017-08-07

相关推荐

  • 网卡相关

    ifconfig eth1 IP / ip a a IP dev eth1 修改指定网卡的IP地址   /etc/udev/rules.d/70-persistent-net.rules 设置Mac地址/网卡名配置文件,建议关机修改Mac地址,否则会造成Mac地址不匹配的情况   /etc/sysconfig/network-script…

    2017-12-18
  • 关于生命中的根

    关于生命中的根    擦干心中的血和泪痕    留住我们的根 关于生命中的根 鸿蒙初辟,万物生于根 寻根之旅 根就是根 我即为根 路在何方 鸿蒙初辟,万物生于根    自linux老祖Torvalds创根之始至今,根一直为linux之本,而FHS(Filesystem Hierarchy Stand…

    Linux干货 2016-10-27
  • 马哥教育网络21期+第十二周练习博客下

    6、在LAMP架构中,请分别以php编译成httpd模块形式和php以fpm工作为独立守护进程的方式来支持httpd,列出详细的过程。 # LAMP编译安装 # LAMP编译安装,目前CentOS7操作系统上可以使用yum进行安装,在CentOS6上需要编译安装 CentOS6 http-2.2主要安装的,编译安装LAMP需要h…

    Linux干货 2016-10-17
  • Linux发展史

    Linux发展史 Linux是一套自由加开放源代码的类Unix操作系统,诞生于1991年10月5日(第一次正式向外公布),由芬兰学生Linus Torvalds和后来陆续加入的众多爱好者共同开发完成。 Linux这个词本身只表示Linux内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU工程各种工具和数据库的操作系统。 li…

    Linux干货 2017-05-20
  • 网络管理2

    一、知识整理 1、网卡配置文件格式:vim /etc/sysconfig/network-scripts/ifcfg-eth0 TYPE=Ethernet接口类型,常见的类型有Ethernet,Bridge BOOTPROTO=static设置静态还是DHCP获取IP,static和none都为静态,不写此行必须指定。查看配置DHCP之后的信息: cat /…

    Linux干货 2016-09-07
  • Java构造时成员初始化的陷阱

    让我们先来看两个类:Base和Derived类。注意其中的whenAmISet成员变量,和方法preProcess() public class Base {     Base() {         preP…

    Linux干货 2015-04-03