多行匹配中^与$解惑

 ^ 匹配行/字符串的起始位置;

如果在增强模式下,^ 还能匹配每个换行符之后的位置。

 

注意:如果多行文本,比如:

first line
second line

实际内容为:

first line[CR][LF]second line


[CR] 回车符
[LF] 换行符

因此,在增强模式下,^ 可以匹配每行文本的开头位置,至于这段的解释,原因在于符合我们的眼睛习惯。

但请注意:$ 可让我们头疼一翻。

 

$ 匹配字符串/一行的结束位置,但是在增强模式下,$可以匹配字符串内部的换行符。

实例:

文本/字符串:abc

正则表达式:^abc$

匹配结果:abc

 

字符串:

123
456


正则表达式:(?m)^\d{3}$

匹配结果:456

说明:(?m)表示启用增强模式。

 

为什么第一行的123不能匹配?

就是因为$无法匹配回车符

123[CR][LF]456


在想一想,为什么不能匹配123,为什么能够匹配456。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值