grep -P的一个小问题

用grep时,发现一个怪异的问题。

背景:grep -E表示用扩展的正则表达式。grep -P 表示用perl正则表达式,区别:http://www.cnblogs.com/wangkangluo1/archive/2012/04/13/2446021.html

测试文件如下:

MAX_STAY_TIME   103299  52      2923
SLIDE_BOTTOM    101047  0       2
MAX_STAY_TIME   103299  53      2861

用例1:

grep -P '[[:space:]]SLIDE_BOTTOM[[:space:]]' temp
grep -P '\sSLIDE_BOTTOM\s' temp 
grep -P '[\n]SLIDE_BOTTOM[[:space:]]' temp 结果: MAX_STAY_TIME
103299 52 2923 SLIDE_BOTTOM 101047 0 2

用例2:

grep -E '[[:space:]]SLIDE_BOTTOM[[:space:]]' temp 
结果:
空

用例3:

grep -E 'SLIDE_BOTTOM[[:space:]]' temp
结果:
SLIDE_BOTTOM    101047  0       2

分析上面三个例子,可以得出grep -P在处理换行符时,有一个小问题,会把上一行的换行符也算成下一行的开头。

 

转载于:https://www.cnblogs.com/hxdoit/p/5412254.html

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值