码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • python切分文本到Excel,以包含指定字符串 为标识符(txt)切分txt文本)


    V1.0_(批量处理有待完善,目前只能一个一个来)

    代码如下:

    import re
    import openpyxl
    
    def extract_and_save_dialogues_with_headers_to_excel(input_file, output_file):
        # 创建一个新的Excel工作簿
        workbook = openpyxl.Workbook()
        sheet = workbook.active
    
        # 添加行标题
        sheet.append(["说话人", "数字", "时间", "文本"])
    
        # 使用正则表达式来匹配说话人、数字和时间的模式
        pattern = r'说话人 (\d+) (\d+:\d+)'
    
        # 初始化变量以跟踪当前说话人、数字和对话文本
        current_speaker = None
        current_number = None
        current_time = None
        dialogue = []
    
        # 打开并读取文本文件
        with open(input_file, 'r', encoding='utf-8') as file:
            for line in file:
                match = re.match(pattern, line)
                if match:
                    # 如果找到新的说话人,则保存之前的对话文本和相关信息并开始新的对话
                    if current_speaker:
                        sheet.append([current_speaker, current_number, current_time, '\n'.join(dialogue)])
                        dialogue = []
    
                    current_speaker = match.group(1)
                    current_number = match.group(1)
                    current_time = match.group(2)
                else:
                    # 如果不是匹配到的行,则将文本行添加到当前对话中
                    if current_speaker:
                        dialogue.append(line.strip())
    
        # 处理最后一个对话
        if current_speaker:
            sheet.append([current_speaker, current_number, current_time, '\n'.join(dialogue)])
    
        # 保存Excel文件
        workbook.save(output_file)
    
        print(f"提取并保存对话、说话人、数字、时间和文本到 {output_file} 完成")
    
    # 使用示例
    extract_and_save_dialogues_with_headers_to_excel("xu.txt", "2.xlsx")
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
  • 相关阅读:
    常见的8种排序(含代码):插入排序、冒泡排序、希尔排序、快速排序、简单选择排序、归并排序、堆排序、基数排序
    Dubbo消费端调用全过程实现分析-负载均衡与集群容错
    WebSocket 详细教程
    Python程序设计实例 | 条形码图片识别
    【技术积累】Docker部署笔记
    家用电器行业B2B供应链集采管理系统:严格把控供应商,降低采购成本
    Windows本地搭建rtmp推流服务
    HTTP(http+抓包Fiddler+协议格式+请求+响应)
    C++ 快速排序算法
    DOCKER学习
  • 原文地址:https://blog.csdn.net/qq_41517071/article/details/132816937
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号