У меня есть несколько файлов со многими строками, которые имеют один из двух форматов:
filename 8724.609 13204.0636961952836 8.8970 xjf
ghw5ra_120411x_9999.splits 5516.291992 16028.341273612765160 25.333 reb -chan 0 -subint 0 -snr 5.6939
В любом случае я хочу изменить числа, которые непосредственно предшествуют трем буквам (в этих случаях "xjf" и"reb") с заданным числом (например, 99,999).
Я знаю, что могу сделать это с помощью регулярных выражений, и я думаю, что могу заменить три буквы чем-то вроде:
x = имя_файла 8724.609 13204.0636961952836 8.8970 xjf
re.sub(r" [a-z]{3}", " abc", x)
Но я не уверен, как изменить числа, предшествующие трем буквам.