python re.sub替换错误的字符串

时间:2017-06-16 17:15:59

标签: python regex

我正在努力使用以下代码:

import re 

datain = "u_func/u_cpu/uSC300"

elements = ["cpu","123"]

SEARCH = r"([0-9_/])%s([0-9_/])" % elements[0]
REPLACE = r'\1%s\2' % elements[1]
dataout = re.sub(SEARCH, REPLACE, datain, flags=re.IGNORECASE)

print datain
print dataout

代码的输出如下:

u_func/u_cpu/uSC300
u_func/uJ3/uSC300

请注意,cpu不会被123替代,而是会被其他内容替代。

如果我将LINE 5更改为:

REPLACE = r'\1 %s\2' % elements[1]

然后插入正确的字符串:

u_func/u_cpu/uSC300
u_func/u_ 123/uSC300

但也增加了一个空间。当然,我不想要这个空间。

问题:如何在没有添加空格的情况下替换正确的字符串?

0 个答案:

没有答案