Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/351.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将元素合并在一起的正则表达式_Python - Fatal编程技术网

Python 将元素合并在一起的正则表达式

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(“非测试测试。这是一个随

使用lxml是否可以使用正则表达式将两个标记合并在一起

<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)