Python 将元素合并在一起的正则表达式
使用lxml是否可以使用正则表达式将两个标记合并在一起Python 将元素合并在一起的正则表达式,python,Python,使用lxml是否可以使用正则表达式将两个标记合并在一起 <t1>test testing </t1> <t1>testing non. </t1> 我尝试了一些使用lxml-etree和XPath的代码,希望这就是您所需要的。不过,我需要做的是在XML中添加一个“根”,然后我甚至添加了第三个“t1”标记,find函数能够在“tests”根中包含的所有3个标记中找到文本 从lxml导入etree xml=etree.xml(“非测试测试。这是一个随
<t1>test testing </t1>
<t1>testing non. </t1>
我尝试了一些使用lxml-etree和XPath的代码,希望这就是您所需要的。不过,我需要做的是在XML中添加一个“根”,然后我甚至添加了第三个“t1”标记,find函数能够在“tests”根中包含的所有3个标记中找到文本
从lxml导入etree
xml=etree.xml(“非测试测试。这是一个随机@test”)
find=etree.XPath(“//t1”)
测试=查找(xml)
测试\u文本=“”
对于t in测试:
测试_text+=t.text
打印(测试和文本)
我使用了lxml文档中的一些参考资料,您可以在这里找到
默认情况下,XPath使用正则表达式,您只需在“find”函数中指明您在XML中查找的标记,在本例中为“//t1”。您是否愿意使用beautifulsoup?首选lxml而不是beautifulsoup
<t1>test testing testing non.</t>
tree.xpath('//t1/[.]') #trying to figure out the regex to match together
from lxml import etree
xml = etree.XML("<tests><t1>test testing </t1><t1>testing non. </t1><t1>this is a random@ test</t1></tests>")
find = etree.XPath("//t1")
tests = find(xml)
tests_text = ''
for t in tests:
tests_text += t.text
print(tests_text)