Python——正则表达式反斜杠问题

与大多数编程语言相同,正则表达式里使用”\”作为转义字符,这就可能造成反斜杠困扰。假如你需要匹配文本中的字符”\”,那么使用编程语言表示的正则表达式里将需要4个反斜杠”\\”:前两个和后两个分别用于在编程语言里转义成反斜杠,转换成两个反斜杠后再在正则表达式里转义成一个反斜杠。

Python里的原生字符串很好地解决了这个问题,这个例子中的正则表达式可以使用r”\”表示。同样,匹配一个数字的”\d”可以写成r”\d”。建议使用raw string(原生字符),就不用再考虑正则表达式的转义问题,而是只考虑编程的转义问题,如果熟悉其他编程语言的话,就很好理解了。

转义分为两个阶段:编程语言转义-》正则表达式转义
使用了raw string类型的时候只考虑前面的编程语言转义即可,后面的不需要考虑,而是用普通的字符串就需要同时考虑上面两个问题。

你可能感兴趣的:(Python——正则表达式反斜杠问题)