使用Nokogiri :: XML :: Builder時,我需要能夠生成一個節點,該節點也可以用其他XML替換文本上的正則表達式匹配。Nokogiri Builder:用RegEx替換XML匹配
目前我能夠在節點內添加額外的XML。這是一個例子。
def xml
Nokogiri::XML::Builder.new do |xml|
xml.chapter {
xml.para {
xml.parent.add_child("Testing[1] footnote paragraph.")
add_footnotes(xml, 'An Entry')
}
}
end.to_xml
end
# further child nodes WILL be added to footnote
def add_footnotes(xml, text)
xml.footnote text
end
它產生;
<chapter>
<para>Testing[1] footnote paragraph.<footnote>An Entry</footnote></para>
</chapter>
但我需要能夠運行一個正則表達式的參考[1]
替換,隨着XML <footnote>
替換它,產生的輸出如下;
<chapter>
<para>Testing<footnote>An Entry</footnote> footnote paragraph.</para>
</chapter>
我在這裏做出假定add_footnotes
方法將接收的參考匹配(例如,如$1
),其將用於從一個集合拉相應的腳註。
該方法也會添加額外的子節點,如下所示;
任何人都可以幫忙嗎?
我確實考慮過拆分選項,但想通一旦我們有幾個腳註參考文件,最終可能會變得非常混亂。我認爲在任何一個段落中都有不止一個,但我仍然會等待有人在接受之前有更好的解決方案。謝謝錫人。 –
查看已添加的示例。 –
這裏有點嚼。這裏遲到了,所以我會在早上經歷這個。 –