之前我们学习了许多在正则表达式中的特殊字符,他们包罗万象,可以实现众多内容的匹配,每一个都身含特殊的意义。但是在现实匹配过程中,有的时候我们的源文本可能会碰到这些特殊字符的时候。如果我们直接将这些特殊字符作为正则表达式打上去,就会造成匹配到的内容出错或者正则表达式创建错误。
因此我们在进行匹配这些特殊字符它们本身的时候,有必要进行一下转义,让正则表达式匹配系统能够辨认说直接匹配这些特殊字符。转义符号由此诞生。
转义符号是什么呢??
我们先卖一个关子,首先我们先举一个栗子:
比如我们有这么一个源文本:
**眨着眼,月儿在歌唱,++有饭吃
这段源文本中有两个在正则表达式中的特殊字符,一个是*
,一个是+
,我们的任务是将这句话匹配出来。如果我们直接将这个源文本作为正则表达式进行匹配,匹配系统会报错:
为什么呢?因为比如*
号是匹配它前面的字符出现零次或者多次的,而这里,我们的*
号前面还是*
号,而*
号本身代表的又是特殊字符,这样的话,势必会造成正则表达式匹配系统无法识别你写的正则表达式,导致错误。因此,如果我们确切的要匹配这些特殊字符的话,应该使用转义字符来进行。
\
反斜杠就是转义字符,它表示将后面的一个字符标记为特殊字符或者为字面值。
比如\*
表示匹配*
号。
比如\[
表示匹配左中括号。
比如\\
表示匹配反斜杠本身。
因此我们之前的栗子,正则表达式应该在*
号和+
号的前面加上反斜杠进行转义,才能匹配成功:
接下来再举一个栗子加深大家的印象,比如我们有这么一个两行的源文本:
**眨着眼 星星眨着眼
如果我们写正则表达式:.*眨着眼
那么这样的表达式中的.*
就能匹配出**
和星星
来:
而现在我们的要求是,我们只想匹配第一行的文本,第二行我们不需要,该如何进行匹配呢?
这时候我们的转义字符就派上大用场了。这样写:\*\*眨着眼
就能只匹配第一行内容了:
以上就是我们转义字符的基本使用啦,大家今后在遇到源文本中有正则表达式的特殊字符的时候,请记得用上转义字符来进行匹配。
以下是我们的视频教程:
在线观看:
高清源文件下载:
内容已经隐藏,请注册为本站会员后查看
感谢大家的收看,我们下期再见!
评论