我的编辑器中有很多文本,括号中是引用。举个例子。
“这是文本,欢迎来到我的文本 [11]。我们有几个来源 [23]。我能为你做什么 [33]”
我想找到括号之间的每个数字,并用包含它的锚标记替换该数字,就像这样<xref ref-type="bibr" rid="R11">[11]</xref>,然后<xref ref-type="bibr" rid="R23">[23]</xref>我现在正在做的是在编辑器中用正则表达式( \[.*?] )查找括号中的数字然后复制并粘贴我要替换的内容。当有超过 100 个要替换的引用时,这很耗时。
有没有办法找到,将其存储在变量中,然后用所述变量替换?
我想出的一种可能的解决方案是使用 JavaScript,但是我无法让它完全正常工作,正如我的输出所证明的那样。
代码:
const document = 'This is text, welcome to my text [11]. We have several sources [23]. What can I do for you [33]'
const regex = /\[.*?\]/gm
let result = document.match(regex);
let array = result
var arrayLength = array.length;
console.log(arrayLength);
for (var i = 0; i < arrayLength; i++) {
console.log(document.replace(regex, '<xref ref-type="bibr" rid="R' + array[i] + '">' + array[i] + "</xref>"));
}
控制台输出:
This is text, welcome to my text <xref ref-type="bibr" rid="R[11]">[11]</xref>. We have several sources <xref ref-type="bibr" rid="R[11]">[11]</xref>. What can I do for you <xref ref-type="bibr" rid="R[11]">[11]</xref>
This is text, welcome to my text <xref ref-type="bibr" rid="R[23]">[23]</xref>. We have several sources <xref ref-type="bibr" rid="R[23]">[23]</xref>. What can I do for you <xref ref-type="bibr" rid="R[23]">[23]</xref>
This is text, welcome to my text <xref ref-type="bibr" rid="R[33]">[33]</xref>. We have several sources <xref ref-type="bibr" rid="R[33]">[33]</xref>. What can I do for you <xref ref-type="bibr" rid="R[33]">[33]</xref>
如您所见,我还需要从rid=属性中删除括号。我也想在编辑器本身中完成这项工作。如果不可能,那么我想我可以使用 node.js 并写入文件。任何其他解决方案也会有所帮助。这应该在 Python 中完成吗?
慕妹3242003
相关分类