如何仅替换文本字符串中的特定点?:
string_expample = '123|4.3|123.54|sdflk|hfghjkkf.ffg..t.s..9.7..tg..3..654..2.fd'
我只需要获得1和2位数之间的点(4.3来自| 4.3 |; 3.5来自123.54等) 在原始字符串中用逗号替换,是否可能? 如果是这样,怎么样? 因此,结果字符串必须是:
string_final = '123|4,3|123,54|sdflk|hfghjkkf.ffg..t.s..9,7..tg..3...654..2.fd'
提前致谢。
答案 0 :(得分:5)
import re
string_example = '123|4.3|123.54|sdflk|hfghjkkf.ffg..t.s..4..tg..3...654..2.fd'
string_final = re.sub(r'(\d)\.(\d)', r'\1,\2', string_example)
print(string_final)
123|4,3|123,54|sdflk|hfghjkkf.ffg..t.s..4..tg..3...654..2.fd
我们使用regular expression查找“digit
.
digit
”(将数字捕获到带圆括号的组中)并将其替换为“group 1
,
group 2
“(组是相应的数字)。