我有简单的表达式 \s 和 \\s。两个表达式都匹配 This is Sparta!!。
>>> re.findall('\\s',"This is Sparta")
[' ', ' ']
>>> re.findall('\s',"This is Sparta")
[' ', ' ']
我在这里很困惑。 \ 用于转义特殊字符,\s 代表空白,但是,两者在这里如何表现?
请您参考如下方法:
不要混淆 python 级别的字符串转义和正则表达式级别的字符串转义。由于 s 在 python 级别不是可转义字符,因此解释器将像“\s”这样的字符串理解为两个字符“\”和“s”。将“s”替换为“n”(例如),它会将其理解为换行符。
'\s' == '\\s'
True
'\n' == '\\n'
False
