蹲地铁打开《诡秘之主》,结果50M的TXT从头拉到尾都找不到第3章?章节全挤成一坨,想跳读只能靠瞎蒙? 别摔手机!小编今天教你用三行Python代码秒建目录树,连生僻字标题都能自动分章!
一、为啥手动加目录比追更还累?
手机阅读器遇到不规范的标题直接摆烂——比如“卷一·苍城古墓”被当成正文,或者“Chapter 1.2”挤在段落中间。更崩溃的是,有些工具号称自动分章,结果把“第一章”和“第一章 重名”拆成两节……想精准跳转?全靠缘分!
二、三行代码核心:正则表达式才是真·目录神器
直接上干货!小编把20+教程浓缩成3行黄金代码(小白直接复制):
python下载复制运行import re chapters = re.split(r'(第[0-9一二三四五六七八九十百千]+章)', open('novel.txt').read()) # 切割章节 for i in range(1, len(chapters), 2): open(f'第{i//2+1}章.txt', 'w').write(chapters[i] + chapters[i+1]) # 自动存文件
举个栗子:处理《雪中悍刀行》时,代码连“第玖拾柒回 剑仙跪地”这种标题都能抓,比人眼还准!
三、避坑指南:三种畸形标题急救方案
遇到非常规格式别慌,改个正则就能救:
标题类型 | 正则写法 | 解决案例 |
---|---|---|
中英文混合 |
| “Chapter 3”秒变目录节点 |
带标点标题 |
| 修复“第12章【重生】”乱码 |
生僻字章节名 |
| 识别“卷三·饕餮盛宴” |
小编翻车经验:曾把“第二章 作者有话说”误判成正文,后来在正则里加
(?!作者有话说)
排除才搞定
四、高阶技巧:目录树+电子书一键生成
分完章还想导出带目录的电子书?两招封神:
1️⃣ EPUB神器kaf-cli:
拖入分章后的文件夹 → 自动生成带目录的epub,连封面都能加
适合懒人,但标题识别规则固定
2️⃣ Calibre硬核自定义:
用正则
###第\1章
标记标题 → Calibre选“//h:h3”生成目录自由度拉满,但得学XPath语法
五、血泪建议:少走弯路的终极心法
老手机用户:别用
re.split
一次性加载文件!改用逐行扫描防崩溃(参考《红楼梦》脚本)通勤党必看:分章前先
os.makedirs('output')
建文件夹,否则文件散满桌面玄幻小说控:正则里加
[·]
匹配分隔符,否则“卷三·昆仑”会被砍成两段!
最后暴言:与其被广告阅读器折磨,不如花5分钟学Python——左手切章节、右手生目录,追更速度比克莱恩偷窃念头还快!
© 版权声明
文章版权归作者所有,未经允许请勿转载。
相关文章
暂无评论...