我对 python 很陌生
我需要通过一个正则表达式匹配所有情况并进行替换。这是一个示例子字符串 --> 期望的结果:
<cross_sell id="123" sell_type="456"> --> <cross_sell>
我正在尝试在我的代码中执行此操作:
myString = re.sub(r'\<[A-Za-z0-9_]+(\s[A-Za-z0-9_="\s]+)', "", myString)
而不是替换之后的所有内容<cross_sell
,它替换所有内容并返回'>'
re.sub 有没有办法只替换捕获组而不是整个模式?
您可以使用替换组:
>>> my_string = '<cross_sell id="123" sell_type="456"> --> <cross_sell>'
>>> re.sub(r'(\<[A-Za-z0-9_]+)(\s[A-Za-z0-9_="\s]+)', r"\1", my_string)
'<cross_sell> --> <cross_sell>'
请注意,我将第一组(您想要保留的组)放在括号中,然后使用"\1"
替换字符串中的修饰符(第一组)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)