在标签中替换“:”

时间:2017-10-17 11:10:43

标签: python regex xml

我有字符串:

<x:tagname x:attribute="value">test content with : symbols</x:tagname>

我需要结果:

<x--tagname x--attribute="value">test content with : symbols</x--tagname>

如何在python中的标签中替换“:”?

2 个答案:

答案 0 :(得分:-1)

我不确定python语法,但您可以使用以下正则表达式:

(?:<|\G)[^>:]*\K:

这与标签内的所有内容相匹配。然后用&#34; - &#34;。

替换所有出现的事件

如何运作

&#39; \ G&#39;匹配当前一轮匹配的起点。因此,通过声明或匹配“&#”;我们可以确定我们是否在标记内。然后我们只需要寻找下一个&#39;:&#39;确保我们不会遇到关闭&#39;&#39;这样做。 &#39; \ K&#39;有效地转储刚刚消耗的主题部分,因此不包括作为替换的一部分。

答案 1 :(得分:-1)

您可以使用replace

代码:

string = '<x:tagname x:attribute="value">test content with : symbols</x:tagname>'

stringx = string.replace(':', '--')

print(stringx)

输出:

<x--tagname x--attribute="value">test content with -- symbols</x--tagname>