正则表达式和数字和文本替换

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

在epub代码中,我有这样的文字:

<span>Capitulo 1 - Apple is red</span>
<span>Capitulo 2 - Milk is white</span>
<span>Capitulo 3 - Weeds are green</span>

我需要用“h1”标签替换“span”标签,并用“章节”替换“capitulo”的所有实例,保留文本的其余部分。我尝试了这一点,没有任何财富:

Find: <span>Capitulo (/d+) * </span>
Replace: <h1>Chapter /1 * </h1>

我能做什么?

第二个问题:如果我有这个文字:

<span>Capitulo 1 - apple is red, 5 chicas</span>
<span>Capitulo 2 - milk is white, 6 chicas</span>
<span>Capitulo 3 - weeds are green, 7 chicas</span>

我想获得:

<h1>Chapter1 - apple is red, 5 girls</h1>
<h2>Chapter2 - milk is white, 6 boys</h2>
<h3>Chapter3 - weeds are green, 7 men</h3>

我该怎么办?

regex replace numbers calibre
1个回答
2
投票

你可以用

发现:<span>Capitulo ([^<]*)</span> 替换:<h1>Chapter \1</h1>

请参阅regex demo和Regulex图:

enter image description here

([^<]*)部分匹配除<之外的任何0个或更多字符,因为[^<]negated character class(...)形成capturing group,其内容可通过backreferences从替换模式访问(参见替换中的\1)。

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