一最安 2022-02-28 15:33 采纳率: 84.4%
浏览 50
已结题

python取出txt文本中符合要求的数据,请问?

B-NAMEE-NAMEOOOOOOOOOOO

1 O
9 O
6 O
3 OO
1 O
2 OOOOOOOOO
广 OOOOOOOOOOOOOOB-NAMEM-NAMEE-NAMEOOOOOO
1 O
9 O
6 O
3 OO
8 OOOOOOOOOOOOOOOO

数据如上,空行分隔为一个句子,文字和标签之间以空格分隔,想要保留右侧标签含有B-NAME和M-NAME和E-NAME的句子,即希望处理后留下的是

B-NAMEE-NAMEOOOOOOOOOOOB-NAMEM-NAMEE-NAMEOOOOOO
1 O
9 O
6 O
3 OO
8 OOOOOOOOOOOOOOOO

请问用python怎么处理呢?请赐教,不胜感激。

  • 写回答

3条回答 默认 最新

  • heianduck 2022-02-28 16:47
    关注
    list1 = []
    with open('test.txt', 'r') as FA:
        for line in FA:
            line = line.strip()
            if line == "":
                list1.append('#')
                continue
            list1.append(line)
    
    list1Str = "_".join(i for i in list1)
    
    finalList = []
    for eachStr in list1Str.split('#'):
        if "B-NAME" in "".join(i for i in eachStr.split('_')) or "M-NAME" in "".join(i for i in eachStr.split('_')) or "E-NAME" in "".join(i for i in eachStr.split('_')):
            finalList.append(eachStr)
    
    for li in finalList:
        li = li.split('_')
        for eachLi in li:
            print(eachLi)
    

    img

    是要这样的吗?

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 3月6日
  • 已采纳回答 3月1日
  • 创建了问题 2月28日

悬赏问题

  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了
  • ¥100 监控抖音用户作品更新可以微信公众号提醒
  • ¥15 UE5 如何可以不渲染HDRIBackdrop背景
  • ¥70 2048小游戏毕设项目
  • ¥20 mysql架构,按照姓名分表
  • ¥15 MATLAB实现区间[a,b]上的Gauss-Legendre积分
  • ¥15 Macbookpro 连接热点正常上网,连接不了Wi-Fi。
  • ¥15 delphi webbrowser组件网页下拉菜单自动选择问题