正则匹配识别txt章节:
在处理包含“卷”和“章”两级结构的小说时,Calibre 的目录设置提供了多个层级的 XPath 匹配框。针对“第一卷”这种大标题,你应该在“一级目录”的框中填入//*[re:test(., '^\s*第[一二三四五六七八九十百千万0-9]+卷', 'i')]。而在“二级目录”的框内,则填入常规的章节匹配表达式,例如 //*[re:test(., '^\s*第[一二三四五六七八九十百千万0-9]+[章节回]', 'i')]。这样转换出来的电子书在阅读器中打开时,会呈现出清晰的折叠层级,点击对应的“卷”标题即可展开下属的所有章节。
对于这种带有等号标识且格式混杂的目录,最稳妥的策略是提取其共同的视觉特征,即前后包裹的等号符号。你可以使用 //*[re:test(., '^\s*===[^=]+===', 'i')] 这个表达式。