如何使用Calibre在包括他们的号码的章节上执行正则表达式替换?

问题描述 投票:1回答:1

我在epub文件中有以下顺序: CHAPTER 1 CHAPTER 2 CHAPTER 3 我想为每个人添加一个头标记,所以我使用Caliber的替换模块: Find: CHAPTER * Replace with:<h1>CHAPTER</h1> 但我只得到这个: <h1>CHAPTER</h1>1 <h1>CHAPTER</h1>2 <h1>CHAPTER</h1>3 ...在h1标签之外的章节号。我究竟做错了什么?

regex replace epub calibre
1个回答
1
投票

Regular expressions不像wildcard characters那样工作。

事实上,正则表达式CHAPTER *意味着:“CHAPTER后面没有或几个空格”。

你需要捕获字符串"CHAPTER",然后是一个空格字符,然后是一个数字(整数)。

所以,你应该写:

Find: CHAPTER (\d+)
Replace with:<h1>CHAPTER \1</h1>

在这里,(\d+)是至少一个(+)数字(\d)的序列。括号括起来捕获此序列并将其存储为\1

您应该阅读Calibre的Quick reference for regexp syntax了解更多详情。

© www.soinside.com 2019 - 2024. All rights reserved.