Python用&替换&

时间:2019-03-20 14:58:50

标签: python regex xml

我希望python正则表达式将xml obj中的string.split(" "); 替换为&。但不要替换&<

示例:

>

我的预期输出应该是

dataobj = '<Style width="100.000000%"/><Data&><![CDATA[<p>TEST TEST &lt; TEST 10&gt; starts &" and T&L'

我可以严格地说outputdata = '<Style width="100.000000%"/><Data&amp;><![CDATA[<p>TEST TEST &lt; TEST 10&gt; starts &amp;" and T&amp;L' &lt; &gt; &eq; &in;不应改变任何内容。我在哪里找到&amp;应该替换为&,而不是&amp; &lt; &gt; &eq; &in;

1 个答案:

答案 0 :(得分:0)

我认为否定的前瞻就足够了,尽管取决于确切的用例,XML解析器可能更好:

CONTAINS

产生

import re
dataobj = '<Style width="100.000000%"/><Data&><![CDATA[<p>TEST TEST &lt; TEST 10&gt; starts &" and T&L'

amp = re.compile(r'&(?![lg]t;)')
print(re.sub(amp,'&amp;',dataobj))