如何解析 python 中的特定文本,其中包含同一行中的所有其他内容

问题描述 投票:0回答:1

我无法弄清楚如何解析特定文本,但我不想只解析特定文本,而是想解析包含在包含我正在查找的文本的同一行中的所有内容

我的代码

txt_file = open("test.txt",'r')
txt = txt_file.read()
txt_file.close()

count = 0

print("counting")
for data in txt:
    data = txt.strip()
    if data.find("holiday"):
        count = count + 1
print(count)
print(data)

txt 文件示例

  1. 7 月 4 日我要庆祝一个叫做 7 月 4 日的假期!
  2. 1月1日是新年国际假期!
  3. 11月30日我要庆祝我朋友的生日

我正在尝试解析txt文件中包含假期的所有行以及句子中包含的其余文本,并像这样按行打印出来

  1. 7 月 4 日我要庆祝一个叫做 7 月 4 日的假期!
  2. 1月1日是新年国际假期!

在来这里之前我正在寻找如何做到这一点,但没有找到我要找的东西

python parsing
1个回答
0
投票

您可以使用

in
运算符查找包含字符串“holidays”的行。然后,如果您将 print 语句移到循环内,它将打印每个匹配的行:

for data in txt:
    if "holiday" in data:
        count = count + 1
        print(data)

如果您想稍后进一步处理匹配行,您还可以将它们保存到单独的数据结构中,而不仅仅是打印它们:

matches = []

for data in txt:
    if "holiday" in data:
        count = count + 1
        matches.append(data)

print(matches)
© www.soinside.com 2019 - 2024. All rights reserved.