特殊序列的用途是什么,例如python中的\ number?

时间:2018-12-02 12:55:20

标签: python regex sequence

为什么第二个打印结果是None:

import re
pattern=r"(.+) \1" #notice that there is whitespace here before the backslash
match=re.match(pattern,"abc abc")
if match:
    print(1)   #1 was printed
match=re.match(pattern,"abc abd")
print(match)   # None

另外,请给我另一个使用'\ 2'的示例。 非常感谢。

1 个答案:

答案 0 :(得分:1)

因为在第二个示例中,您具有不同的值abcabd

根据py man,\number

  

匹配相同编号组的内容

https://docs.python.org/3.7/library/re.html

这意味着,它匹配组的内容,而不是组的正则表达式,因此第二部分应该相同。这是查找其他匹配项的方法。

下面是\2的示例:

(.+) (.+) \1 \2

将匹配

hello kitty hello kitty