Python中字符串有一些常见的转义符,例如: \\,\n,\t,\f,\t等等,转义的意思就是,计算机遇到这样的字符,会转换它的意思,表示成另外一种含义。
例如:print('Hello\World\nPython') 在编译器中输出的是:
Hello\World
Python
而不是Hello\World\nPython,因为\n转义成了换行。\w 没有转义的意思是在字符串中 \W不代表特殊意思。所以没有转义。
在python字符串中存在转义,那么在正则表达式中也存在转义。这两种转义是截然不同的,也是很多初学者容易混淆的地方。
正则表达式中。反斜杠后面跟元字符( . ? * $ | ^ [] () {} 等)去除特殊功能
反斜杠后面跟普通字符实现特殊功能,比如 \d \D \w \W
在字符串中使用正则表达式,个人理解是首先进行字符串的转义,其次再进行正则表达式的转义,为了使字符串表示原生意思,用r作为前缀。 这样只需要考虑正则表达式的转义,使用起来也比较方便。