【发布时间】:2021-09-24 09:47:47
【问题描述】:
我有一个包含数字和文本字符串的文本文件
21 05W104222222316011W1KKB 2564 CHURCH STREET
21 05W1045098014 CHITTOOR PA 17125
CHECK TRANSACTIONS GB KDI01
TOTALS PAGE 00094 DATE 07/22/21
OPERATION ----INPUT NUMBER---- ----REJECTED TRANSACTIONS---- ------CHECK EXTRACTS------
COMPANY CASH ACCOUNT RECORDS TRANSACTIONS NUMBER AMOUNT NUMBER AMOUNT
21 11633 96 24 0 0.00 24 1,059.59
21 96 24 0 0.00 24 1,059.59
我正在尝试删除具有数值的行(完整行)
import re
with open("data.txt", 'r') as f:
for line in f:
if not all(i.isdigit() for i in line):
print(line)
输出
OPERATION ----INPUT NUMBER---- ----REJECTED TRANSACTIONS---- ------CHECK EXTRACTS------
COMPANY CASH ACCOUNT RECORDS TRANSACTIONS NUMBER AMOUNT NUMBER AMOUNT
上面的代码也删除了非数字行...
预期输出
21 05W104222222316011W1KKB 2564 CHURCH STREET
21 05W1045098014 CHITTOOR PA 17125
CHECK TRANSACTIONS GB KDI01
TOTALS PAGE 00094 DATE 07/22/21
OPERATION ----INPUT NUMBER---- ----REJECTED TRANSACTIONS---- ------CHECK EXTRACTS------
COMPANY CASH ACCOUNT RECORDS TRANSACTIONS NUMBER AMOUNT NUMBER AMOUNT
我只想删除没有硬编码的数字行,例如删除21 和1,059.59 之间的文本。需要动态删除带数字的行。
【问题讨论】:
标签: python text-parsing