我需要使用长字符串来测试正则表达式。但是,测试字符串总是被内部引号改变,这导致整个字符串分成几个部分,其中一些不包含在字符串中,因此发生了错误。
str1=r"row Id="7" PostTypeId="2" ParentId="4" \n
CreationDate="2008-07-31T22:17:57.883"\n
Score="49" ViewCount="0" Body="<p>An explicit cast to double i"
你会告诉我如何解决这个问题吗?非常感谢。
答案 0 :(得分:2)
使用多行字符串:
str1 = r"""row Id="7" PostTypeId="2" ParentId="4"
CreationDate="2008-07-31T22:17:57.883"
Score="49" ViewCount="0" Body="<p>An explicit cast to double i"""
只要您的字符串不跨越多行,您也可以使用替代引号字符:
str1 = r'row Id="7" PostTypeId="2" ParentId="4"'
或(如果你的字符串中有两种引号)转义引号(但是,正如Ned Batchelder所说,那么你不能再使用原始字符串了):
str1 = 'row Id="7" PostTypeId=\'2\' ParentId="4"'