搜索并用文件中的单词替换数字

Chl*_*loe 2 python regex search replace file

我有一个包含数字和字母的文件,我想将所有数字替换为单词(例如,8 转换为 8)。好吧,我只是没有办法检查我的文件中是否有数字。做到这一点的最佳有效方法是什么?

Mar*_*ans 6

以下应该可以工作,它读取输入文件,使用正则表达式查找所有数字,并使用num2words库将每个数字替换为文本:

import re
import num2words


with open('input.txt') as f_input:
    text = f_input.read()

text = re.sub(r"(\d+)", lambda x: num2words.num2words(int(x.group(0))), text)

with open('output.txt', 'w') as f_output:
    f_output.write(text)
Run Code Online (Sandbox Code Playgroud)

num2words可以使用以下方法安装该库:

pip install num2words
Run Code Online (Sandbox Code Playgroud)

因此,如果您的输入文本文件包含:

import re
import num2words


with open('input.txt') as f_input:
    text = f_input.read()

text = re.sub(r"(\d+)", lambda x: num2words.num2words(int(x.group(0))), text)

with open('output.txt', 'w') as f_output:
    f_output.write(text)
Run Code Online (Sandbox Code Playgroud)

输出将是:

pip install num2words
Run Code Online (Sandbox Code Playgroud)