grep断言

本文介绍了grep中使用的四种断言:先行断言、后发断言、负向零宽度先行断言和负向零宽后发断言,详细解释了它们的工作原理和应用场景,并给出了实例,如'Win(?=2000)'用于匹配Win2000但不匹配WinXP。
摘要由CSDN通过智能技术生成

断言分四种:

  1. 先行断言 X(?=Y),也叫 零宽度正预测先行断言,当X的右边是Y时匹配成功;
  2. 后发断言 (<=Y)X,也叫 零宽度正回顾后发断言,当X的左边是Y时匹配成功;
  3. 负向零宽度先行断言 X(?!Y),当X的右边不是Y时匹配成功;
  4. 负向零宽后发断言 (?<!Y) X,当X的左边不是Y时匹配成功;

比如,‘Win(?=2000)’ 匹配 Win2000, 但不匹配 WinXP。

XX预测断言,在右边;“预测”总是和“先行”成对出现;
XX回顾断言,在左边;“回顾”总是和“后发”成对出现;

$ cat foo | grep -P win
win200
winxp
200win
95win
200win95
$ cat foo | grep -P 'win(?=2)'
win200
$ cat foo | 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值