shell正则表达式介绍

本章内容包括:
•  匹配行首与行尾。
•  匹配数据集。
•  只匹配字母和数字。
•  匹配一定范围内的字符串集。

7.1  使用句点匹配单字符
7.2  在行首以^匹配字符串或字符序列
7.3  在行尾以$匹配字符串或字符
可以说$与^正相反,它在行尾匹配字符串或字符, $符号放在匹配单词后。假定要匹配以
单词t r o u b l e 结尾的所有行,操作为:
t r o u b l e $
类似的,使用1 d $返回每行以 1 d结尾的所有字符串。
如果要匹配所有空行,执行以下操作:
^ $
具体分析为匹配行首,又匹配行尾,中间没有任何模式,因此为空行。
如果只返回包含一个字符的行,操作如下:
^ . $
不像空白行,在行首与行尾之间有一个模式,代表任意单字符
7.4  使用*匹配字符串中的单字符或其重复序列
7.5  使用\屏蔽一个特殊字符的含义
有时需要查找一些字符或字符串,而它们包含了系统指定为特殊字符的一个字符。什么
是特殊字符?一般意义上讲,下列字符可以认为是特殊字符:
假定要匹配包含字符“ .”的各行而“, ”代表匹配任意单字符的特殊字符,因此需要屏蔽
其含义。操作如下:
\ .
上述模式不认为反斜杠后面的字符是特殊字符,而是一个普通字符,即句点。
假定要匹配包含^的各行,将反斜杠放在它前面就可以屏蔽其特殊含义。如下:
\ ^
如果要在正则表达式中匹配以 * . p a s结尾的所有文件,可做如下操作:
\ * \ . p a s
即可屏蔽字符*的特定含义

7.6  使用[]匹配一个范围或集合
7.7  使用\{\}匹配模式结果出现的次数
使用*可匹配所有匹配结果任意次,但如果只要指定次数,就应使用 \ { \ } ,此模式有三种
形式,即:
pattern\{n\}  匹配模式出现n次。
pattern\{n,\}  匹配模式出现最少 n次。
pattern\{n,m}  匹配模式出现n到m次之间,n , m为0 - 2 5 5中任意整数。
请看第一个例子,匹配字母 A出现两次,并以B结尾,操作如下:
A \ { 2 \ } B
匹配值为A A B
匹配A至少4次,使用:
A \ { 4 , \ } B
可以得结果 A A A A B或A A A A A A A B,但不能为 A A A B。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值