概述
对于正则表达式中的反斜杠根据个人理解是这样的:
与大多数编程语言相同,正则表达式里使用""作为转义字符,这就可能造成反斜杠困扰。假如你需要匹配文本中的字符"",那么使用编程语言表示的正则表达式里将需要4个反斜杠"\\":前两个和后两个分别用于在编程语言里转义成反斜杠,转换成两个反斜杠后再在正则表达式里转义成一个反斜杠。Python里的原生字符串很好地解决了这个问题,这个例子中的正则表达式可以使用r"\"表示。同样,匹配一个数字的"\d"可以写成r"d"。有了原生字符串,你再也不用担心是不是漏写了反斜杠,写出来的表达式也更直观。
举例说明以上内容
s = 'ABC\-001' # Python的字符串
# 对应的正则表达式字符串变成:
# 'ABC-001'
因此我们强烈建议使用Python的r前缀,就不用考虑转义的问题了:
s = r'ABC-001' # Python的字符串
# 对应的正则表达式字符串不变:
# 'ABC-001'
简而言之就是:如果不加前缀r,则需要转义才能得到对应的正则表达式字符串,然后正则表达式转义之后再抛给引擎(比如re模块的引擎)就行处理
比如 要匹配字符,则r'\',或者'\\'.
要匹配字符(,则r'(',或者'\(’
最后
以上就是自由火车为你收集整理的正则表达式反斜杠带来的困扰的全部内容,希望文章能够帮你解决正则表达式反斜杠带来的困扰所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复