PyCharm认为这个RegExp有重复字符是characte类。是不是错了?

时间:2017-05-08 05:39:30

标签: python regex python-3.x unicode pycharm

# Python3
r = re.compile(r"[\U0001f570\U0001f573\U0001f57a]")

这个RegExp应该找到三个表情符号中的一个。一切正常,但PyCharm说:

  

“在字符类中复制字符\ U0001f573”

     

“在字符类中复制字符\ U0001f57a”

如果我改变了顺序,它会对第2和第3个符号说同样的内容,但从不说第1个符号。

这是PyCharm中的错误(可能关于unicode代理对)或者我的RegExp确实有问题吗?

更新:屏幕截图,以确保你让我正确。 enter image description here

2 个答案:

答案 0 :(得分:1)

这是known bug。目前2017-07-27仍然开放。

答案 1 :(得分:0)

理论上,您应该可以使用以下方法抑制代码检查:

 # noinspection Annotator

这是Code-> Inspect code...对话框中建议的方法。

它不适用于我的PyCharm版本,但可能适用于您的版本。

  

PyCharm 2018.3.3(社区版)内部版本#PC-183.5153.39,于2019年1月9日构建

     

JRE:1.8.0_152-release-1343-b26 amd64 JVM:JetBrains s.r.o的OpenJDK 64位服务器VM>

     

Windows 10 10.0