如何只替换字符串中的特定点?

Art*_*tem 1 python string replace

如何只替换文本字符串中的特定点?:

string_expample = '123|4.3|123.54|sdflk|hfghjkkf.ffg..t.s..9.7..tg..3..654..2.fd'
Run Code Online (Sandbox Code Playgroud)

我只需要在原始字符串中用逗号替换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'
Run Code Online (Sandbox Code Playgroud)

提前致谢.

Ole*_*pin 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)
Run Code Online (Sandbox Code Playgroud)
123|4,3|123,54|sdflk|hfghjkkf.ffg..t.s..4..tg..3...654..2.fd

我们使用正则表达式来查找" digit . digit"(将数字捕获到带括号的组中)并用" group 1 , group 2" 替换它们(组是相应的数字).