从关于 正则表达式的 python 文档中,关于 '\'
字符:
解决方案是使用 Python 的原始字符串表示法表示正则 中不以任何特殊方式处理反斜杠 以
'r'
为前缀的字符串文字。所以r"\n"
是一个两个字符的字符串 包含'\'
和'n'
,而"\n"
是一个字符串 包含换行符。通常模式将用 Python 表示 使用此原始字符串表示法的代码。
这个原始的字符串符号是什么?如果使用原始字符串格式,这是否意味着 "*"
被视为一个文字字符,而不是一个零或多个指示符?这显然是不对的,否则 regex 将完全失去它的能力。但是,如果它是一个原始字符串,如果 "\n"
是字面上的反斜杠和 "n"
,它如何识别换行符呢?
我不明白。
编辑奖金:
我试图理解一个原始字符串 regex 如何匹配换行符、制表符和字符集,例如 \w
表示单词,\d
表示数字或者其他类似的东西,如果原始字符串模式不能识别反斜杠就是普通字符。我真的需要一些好的例子。