我目前正在处理要替换符号分号“;”的几行。带有符号“]”。我正在使用line.replace(“;”,“]”)。不知何故,当分号的位置在一行中不一致时,我发现它不起作用。
示例:
CONCAT
但是,它不适用于以下行:
input add_clk; #this one works where the output will be input add_clk]
我在脚本中使用的行是:
input sub_clk ; #tnothing change to the output, input sub_clk
不知何故,我发现此问题可能是由于分号前有空格引起的。无论如何,脚本可以忽略空格,以便将输出输入为sub_clk]吗?
答案 0 :(得分:0)
您的代码在我的PC上工作正常。您可以尝试以下操作从输入中删除空格:
l = input()
if ";" in l:
l = l.replace(";","]").replace(" ","")
print(l)
答案 1 :(得分:0)
您的代码可在我的终端上正常工作
>>> a = "input sub_clk ;"
>>> if ";" in a:
... a = a.replace(";", "]")
...
>>> a
'input sub_clk ]'
>>>
您的字符串中可能有一些不可见的字符?至少在您的代码中看不到任何问题。
如果要替换分号并删除空格,可以尝试执行以下操作:
>>> import re
>>> a = "input sub_clk ;"
>>> a = a.rstrip()
>>> a = re.sub("\\s*;$","]",a)
>>> a
'input sub_clk]'