为什么下面的正则表达式代码返回逗号(,)

时间:2015-05-15 12:32:02

标签: python regex python-2.7

请让我知道为什么下面这段代码会给出以下结果

>>> pattern = re.compile(r'[!#$%&()*+-.]')
>>> pattern.findall("a,b")
[',']

re.compile方法中没有逗号(,)符号,但为什么它也匹配逗号?

1 个答案:

答案 0 :(得分:9)

[+-.]是从+(ASCII 43)到.(ASCII 46)范围内的单个字符。

在这两个字符之间,您会找到,(ASCII 44)和-(ASCII 45)。

我猜你想要\-而不是-