Регулярное выражение Python для исправления числового формата

#python #string

#python #строка

Вопрос:

У меня есть текстовые файлы, содержащие 1000 чисел в формате 1 3434,00 или 12 4453,00, мне нужно превратить их в US / UK local с помощью python, чтобы они были 13434,00 124453,00.

Какое выражение регулярного выражения или выражение замены я бы использовал для этого?

Ответ №1:

Вы можете использовать следующее выражение:

 x = text.replace(",", ".")
 

Ответ №2:

Предполагается, что все телефонные номера считываются из файла и сохраняются в переменной phone_number . Итак, что вы могли бы сделать, это заменить пробел ничем, а запятую точкой.

 phone_number = phone_number.replace(' ','')
phone_number = phone_number.replace(',','.')
 

Спасибо.

Ответ №3:

Если ваши «числа» встроены в текст, вы можете попробовать следующее:

 import re

test = '''
I have text files containing 1000's of numbers in the format 1 3434,00 or 12 4453,00 I need to turn them into US/UK local using python so that they are 13434.00 124453.00.

What regex expression or replace expression would I use to do this?
'''

def to_number_string(m):
    s = m.group()
    print(repr(s))
    return s.replace(' ', '').replace(',', '.')

r = re.compile(r'd [ d]*,d*')
print(r.sub(to_number_string, test))