正则中的^和$的理解

开头与结尾

特殊代码^以及$有点类似,都是占位符,都匹配一个位置,不匹配任何字符。^匹配你要用来查找的字符串的开头,$匹配你要用来查找的字符串结尾。
全字匹配的时候,有时我们要限制匹配结果所在的位置,比如,当你要在一堆手机号中查找 130 号段的号码,此时如果使用全字匹配,你可能会匹配到 18712341301 这样的结果,因为其中包含了 130 这个子串,但是我们需要的是 130 开头的号码,所以全字匹配不能满足需求了。此时,只要在全字匹配的正则中添加一个特殊符号 ^,这个特殊符号仅仅作为一个位置标记符,表示整个要匹配的目标字符串的开头,要注意这一点,它是一个表示开始位置的占位符。

  • 示例:
    /^130/ 仅匹配处于字符串开头位置的 130,比如 13012345678,而类似于 11302345678 这种虽然包含 130,但是不是在最开头包含的,则会匹配失败。

与 ^ 匹配开始位置对应的是 $,表示要匹配的目标字符串的结尾,它也仅仅是一个表示位置的占位符。

  • 示例:
    /ed$/仅匹配处于字符串结尾的 ed,比如 opened、closed,而类似于 edge、bedroom 这些虽然包含 ed,但是不在结尾的,则会匹配失败。
    /^Hello World$/ 仅匹配既处于开头又处于结尾的 Hello World,因此只有一种情况是满足的:也就是整个匹配的目标字符串就只有 Hello World。
  • 8
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值