正则表达式SoEasy 10 杠杠的转义字符

avatar
avatar
雪山凌狐
489
文章
29
评论
2017年5月12日06:39:43 评论 6,367 1005字阅读3分21秒

之前我们学习了许多在正则表达式中的特殊字符,他们包罗万象,可以实现众多内容的匹配,每一个都身含特殊的意义。但是在现实匹配过程中,有的时候我们的源文本可能会碰到这些特殊字符的时候。如果我们直接将这些特殊字符作为正则表达式打上去,就会造成匹配到的内容出错或者正则表达式创建错误。

因此我们在进行匹配这些特殊字符它们本身的时候,有必要进行一下转义,让正则表达式匹配系统能够辨认说直接匹配这些特殊字符。转义符号由此诞生。


转义符号是什么呢??

我们先卖一个关子,首先我们先举一个栗子:

比如我们有这么一个源文本:

**眨着眼,月儿在歌唱,++有饭吃

这段源文本中有两个在正则表达式中的特殊字符,一个是*,一个是+,我们的任务是将这句话匹配出来。如果我们直接将这个源文本作为正则表达式进行匹配,匹配系统会报错:

正则表达式SoEasy 10 杠杠的转义字符

为什么呢?因为比如*号是匹配它前面的字符出现零次或者多次的,而这里,我们的*号前面还是*号,而*号本身代表的又是特殊字符,这样的话,势必会造成正则表达式匹配系统无法识别你写的正则表达式,导致错误。因此,如果我们确切的要匹配这些特殊字符的话,应该使用转义字符来进行。


\     反斜杠就是转义字符,它表示将后面的一个字符标记为特殊字符或者为字面值。

比如\*表示匹配*号。

比如\[表示匹配左中括号。

比如\\表示匹配反斜杠本身。


因此我们之前的栗子,正则表达式应该在*号和+号的前面加上反斜杠进行转义,才能匹配成功:

正则表达式SoEasy 10 杠杠的转义字符


接下来再举一个栗子加深大家的印象,比如我们有这么一个两行的源文本:

**眨着眼
星星眨着眼

如果我们写正则表达式:.*眨着眼

那么这样的表达式中的.*就能匹配出**星星来:

正则表达式SoEasy 10 杠杠的转义字符

而现在我们的要求是,我们只想匹配第一行的文本,第二行我们不需要,该如何进行匹配呢?

这时候我们的转义字符就派上大用场了。这样写:\*\*眨着眼

就能只匹配第一行内容了:

正则表达式SoEasy 10 杠杠的转义字符


以上就是我们转义字符的基本使用啦,大家今后在遇到源文本中有正则表达式的特殊字符的时候,请记得用上转义字符来进行匹配。

 

 

以下是我们的视频教程:

在线观看:

 

 

高清源文件下载:

内容已经隐藏,请注册为本站会员后查看

 

 

 

感谢大家的收看,我们下期再见!

继续阅读
如果你觉得内容不错的话,欢迎点赞,评论和分享哟~
avatar
电影排行爬虫 5 正则解析页面 专题课程

电影排行爬虫 5 正则解析页面

本节课我们主要将上一节课分析出来的正则表达式应用到python代码当中,实现了页面的解析。 解析完成后我们使用yield命令一个个推出给写出的函数中供写出。这时候我们就不得不讲一下yield的用法。y...
电影排行爬虫 4 正则分析 专题课程

电影排行爬虫 4 正则分析

本节课我们着重进行了获取解析我们要的内容的正则表达式的编写,通过一番分析,我们成功编写了对应的正则表达式并成功进行了测试,可以使用啦。   以下是我们的视频教程: 在线观看: 该教程目前暂为...

发表评论