首页 > 解决方案 > 根据行号检索文本

问题描述

我正在读取 OCR 图像文件并将其转换为文本。现在,我需要提取一个特定的文本。

生成的文本(不完整的文本):

FROM: 2902 W SWEETWATER AV #1100
Phoenix, AZ 95029

TO: BANNER THUNDERBIRD MED CTR
5855 W THUNDERBIRD RD
Glendale, AZ 85307

c9 23 1975 x

我需要在FROM:段下提取95029 。我在想先获取 FROM: 段的行号,然后加一个来获取下一个行号并应用正则表达式来检索文本。但是,我无法获取下一个行号的文本。

for num, line in enumerate(text.splitlines()):
    if 'FROM:' in line:
        num = num+1
        print(num)
        break
#print(line)

我能够获得行号,但不能获得文本。请建议。

标签: python-3.xtext

解决方案


将拆分后的文本列表保存到变量中,text_list = text.splitlines()稍后您可以使用访问下一行text_list[num+1]

尝试这样的事情:

text = """FROM: 2902 W SWEETWATER AV #1100
Phoenix, AZ 95029

TO: BANNER THUNDERBIRD MED CTR
5855 W THUNDERBIRD RD
Glendale, AZ 85307

c9 23 1975 x"""



desired_line = ''
text_list = text.splitlines()

for num, line in enumerate(text_list):
    if 'FROM:' in line:
        desired_line = text_list[num+1]
        break

print(desired_line) # prints desired line
print(desired_line.split()[-1]) # prints Number you seeked

推荐阅读