【发布时间】:2020-09-06 12:37:16
【问题描述】:
考虑文本结构
(Title)[#1Title-link]
(Chapter1)[#Chapter1-link]
(Chapter2)[#Chapter2-link]
(Chapter3)[#Chapter3-link]
如何在不匹配查找结果的情况下反向引用 [#Title-link]。我想改变
(Chapter1)[#Chapter1-link] => (Chapter1)[#1Title-link-Chapter1-link]
(Chapter2)[#Chapter2-link] => (Chapter2)[#1Title-link-Chapter2-link]
(Chapter3)[#Chapter3-link] => (Chapter3)[#1Title-link-Chapter3-link]
我尝试使用并找到
(\(Title\)\[(.*?)])([\s\S]*?\[)#(\D.*?\])
然后替换为
$1$3$2-$4
但是这里的问题每次查找只突出显示一次,而且我有很多章节效率太低,无法一一替换。 制作一个固定的标题也不好,因为我有多个具有相同结构的文件。
这在正则表达式中可能吗?欢迎任何解决方案或替代方案。
【问题讨论】:
标签: regex regex-group backreference