我在这里看到过非常类似的帖子,但我似乎无法让它们中的任何一个发挥作用
这是我的密码
import re
regex='<item>
<obj1>grab1</obj1>
<obj2>text<obj2>
...
</item>'
pattern=re.compile(regex)
searchfile=open('data.dat')
filetext=searchfile.read()
text=re.findall(pattern,filetext)
print text
我试着把\n字符串放进去
regex='<item>\n
<obj1>grab1</obj1>\n
<obj2>grab2<obj2>\n
...
</item>'
但它不起作用。任何帮助都将不胜感激
多行字符串使用三个单引号或双引号作为分隔符。不需要添加
\n
来表示新行您的代码将变成:
也就是说,regex的第三行可能还有另一个错误:忘记关闭
<obj2>
元素最后,如果您想解析XML文档,我不建议您使用正则表达式。相反,您可能希望查看诸如lxml之类的库
考虑以下文档
data.dat
:运行上述python代码,您将得到:
['<item>\n<obj1>grab1</obj1>\n<obj2>text</obj2>\n</item>']
由于缩进,第二个
<item>
被忽略请尝试以下操作
相关问题 更多 >
编程相关推荐