正则表达式分章
阅读器不能列出所有类型的章节的提取方式,所以提供了一个正则表达式提取分章的功能,使用这个功能,理论上可以完美提取几乎所有txt小说的章节。
需要理解
正则表达式提取txt章节,你一般只需要理解下面几个符号的意思
- . 英文的一个点,可以匹配任意一个字符
- \d 匹配0-9的阿拉伯数字
- * 表示前面的一个字符出现0次以上
- + 表示前面的一个字符要求出现一次或一次以上
- {0,9} 表示前面的一个字符出现0到9次
示例一
如下的章节类型
- 第一章 飞雪连天
- 第二章 笑书神侠
- 第三节课…
阅读器有时候会把第三节课误认为章节提取出来,为了识别这类,需要精确匹配“章”这个关键字。
提取表达式
- .{0,10}第.*章.{0,30}
解释
第.*章表示这一行必须要有“第”和“章”两个字,.{0,10}表示“第”的前面不能出现10个以上的字符,.{0,30} ,表示“章”后面的字数在30个字以内,满足这些条件的行就提取作为章节
示例二
如下的章节类型
- 1、飞雪连天
- 2、笑书神侠
- …
使用的提取表达式
- .{0,10}\d+、.{0,30}
解释
\d+表示必须至少要有一位数字,.{0,10}表示数字的前面不能出现10个以上的字符,顿号匹配自己,表示这一行必须要有顿号,.{0,30} ,表示顿号后面的字数在30个字以内,满足这些条件的行就提取作为章节
示例三
如下的章节类型
- 章一 飞雪连天
- 章二 笑书神侠
- …
使用的提取表达式
- 章.{0,30}
解释
如果以“章”字开头,且其后的字数在30个字以内,满足这两个条件的行就提取作为章节