0

我在 epub 文件中有以下序列:

CHAPTER 1
CHAPTER 2
CHAPTER 3

我想为它们中的每一个添加一个 head 标签,所以我使用 Calibre 的替换模块:

Find: CHAPTER *
Replace with:<h1>CHAPTER</h1>

但我只获得这个:

<h1>CHAPTER</h1>1
<h1>CHAPTER</h1>2
<h1>CHAPTER</h1>3

... 章节号在 h1 标签之外。我究竟做错了什么?

4

1 回答 1

1

正则表达式不像通配符那样工作。

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

您需要捕获字符串"CHAPTER"后跟至少一个空白字符,然后是一个数字(整数)。

所以,你应该写:

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

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

您应该阅读Calibre正则表达式语法的快速参考以了解更多详细信息。

于 2019-04-14T17:39:48.227 回答