首页 > 其他 > 详细

全网最易懂的正则表达式教程(5)- 断言

时间:2020-07-01 16:01:12      阅读:54      评论:0      收藏:0      [点我收藏+]

正则详细教程系列可以看此链接的文章哦

https://www.cnblogs.com/poloyy/category/1796055.html

 

特殊单字符

元字符说明
\b 匹配单词的开始或结束
\B 和 \b 相反
^ 匹配字符串(行)的开始
$ 匹配字符串(行)的结束

 

\b 的栗子

first

匹配文本 poloyy
正则表达式 \bpoloyy\b
匹配数量 1
匹配结果 poloyy

 

second

匹配文本 poloyy
正则表达式 \bpo
匹配数量 1
匹配结果 po

 

third

匹配文本 poloyy1
正则表达式 \bpo....\d\b
匹配数量 1
匹配结果 poloyy1

 

four

匹配文本 y1菠萝_A
正则表达式 \b\w.
匹配数量 2
匹配结果 y1、_A

 

总结

  • \b 其实并不匹配任何字符,它只匹配一个位置(开头,结尾)
  • 相当于单词的开头或结尾,有点类似 ^  、 $ 
  • 单词:连起来的字母、数字、下划线,但不包括汉字(如 four 的栗子 ),一般可以用元字符 \w+ 来表示

 

再来看看一个拓展的栗子

技术分享图片

重点:在精确匹配某个单词时,我们使用 \b\w+\b 就可以实现了

 

行的开始或结束

和单词的边界类似,在正则中还有文本每行的开始和结束,如果要求匹配的内容要出现在一行文本开头或结尾,就可以使用 ^ 和 $ 来进行位置界定

 

怎么才算一行?

在结尾处有换行符

要注意:在计算机中,回车 \r 和换行 \n 其实是两个概念,并且在不同的平台系统上,换行符的表示也是不一样的

 

不同系统的换行符

系统换行符
Windows \r\n
Linux \n
macOS \n

 

^ 的栗子

first

匹配文本 菠萝_A
正则表达式 ^菠.
匹配数量 1
匹配结果 菠萝

 

second

匹配文本 _123
正则表达式 ^_\d
匹配数量 1
匹配结果 _1

 

总结

和 \b  不一样, ^ 是匹配行开始的任意字符,可以包括汉字

 

$ 的栗子

first

匹配文本 菠2萝_
正则表达式 \d._$
匹配数量 1
匹配结果 2萝_

 

second

匹配文本 123菠萝
正则表达式  \b\w\d\d菠萝$ 
匹配数量 1
匹配结果 123菠萝

 

总结

和 \b 不一样, $ 是匹配行结尾的任意字符,可以包括汉字

 

 

全网最易懂的正则表达式教程(5)- 断言

原文:https://www.cnblogs.com/poloyy/p/13212191.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!