加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

关于正则有意思的事情

发布时间:2020-12-14 04:36:46 所属栏目:百科 来源:网络整理
导读:-sublime是文本编辑器,所以 冒号 不会当成是字符串的开始,他已经成为了文本字符。 - 冒号不用转义,等号也不用转义 - abc$匹配的是以abc结尾的abc,而不是含有abc结尾的整个字符串,是子串。如果要匹配带什么的,请把之前的任意说出来。 同样的到底,^abc

-sublime是文本编辑器,所以冒号不会当成是字符串的开始,他已经成为了文本字符。
- 冒号不用转义,等号也不用转义
- abc$匹配的是以abc结尾的abc,而不是含有abc结尾的整个字符串,是子串。如果要匹配带什么的,请把之前的任意说出来。
同样的到底,^abc匹配的是以abc开头的abc,不是abc开头的整个字符串。

字符串的结束是以space或者n来标志。正则匹配会遍历每个字符串,去全部匹配。

但是,当正则中含有space,那么两个字符串就会变成一个字符串。

比如说:

abc abcd
.regex1: abc
.regex2:abc a

未加说明的是字符串只会找到符合条件的子串,不会联想到整个字符串。
所以,就有这样的例子:

a开头,b结尾的字符串,说这句话的时候其实已经默认我要找的是整个字符串,而不是子串。
应该描述成a开头,中间任意长度任意字符,b结尾的字符串。

123456789,找567,不能用^567$来描述。因为^和$一起用的意思表示的是我要搜寻这样的整个字符串,是整个,不是子串。当然^123就可以找到123,和我上面说的不矛盾

所以,慎用^和$,这玩意不好整。

其实,每次出现这样的问题,我们可以回归到最初的起点去思考: 正则表达式最初的目的还是进行查找,不过更加个性化了。所以,有时候拿着ctrl+F去思考和比对一下,就明白了很多。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读