Python正则表达式报错:invalid escape sequence ‘\d’ (无效的转义字符’\d’)

  • Post author:
  • Post category:python


python3.7 + 正则表达式

报错 ” invalid escape sequence ‘\d’ ” (无效的转义字符’\d’)。

原因是Python 3将字符串文字解释为Unicode字符串,因此 \d 被视为转义的Unicode字符。解决办法有两种。



方法1:

在字符串字面值中使用两个反斜线, 表示正则表达式受到保护,不被字节码编译器解释。即把 \ 都变成 \\ 。



输出:

<re.Match object; span=(0, 40), match=‘Hello 1234567 World_This is a Regex Demo’>

1234567



方法2:

可以预先在正则表达式前添加 r ,然后这些转义只会被解析为正常地转义,如下所示:



输出:

<re.Match object; span=(0, 40), match=‘Hello 1234567 World_This is a Regex Demo’>

1234567



版权声明:本文为qq_42780289原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。