2
我試圖將標記化的字符串(英文句子)轉換爲HTML span標記以HTML顯示。如何通過Nokogiri訪問沒有名稱的文本
這裏是我試圖執行
- 取其中包含空格的標記化字符串的基本步驟
- 與
<root></root>
括起來,使之成爲有效的XML - 創建一個引入nokogiri對象訪問xml
- 能夠遍歷「element_children」節點集來訪問名稱和文本,並使用它來將令牌轉換爲
<span class=token>
- 但是,無法訪問存在於nokogiri對象中的
#(Text " ")
(pry中的第7步) - 因此,當我嘗試將這些元素添加到數組 後面我將加入創建HTML時,我正在失去原始字符串中的空格。
任何指向在nokogiri中使用的正確方法的指針都會非常感激。同樣,歡迎任何其他建議。
您可以查看代碼:
require 'nokogiri'
sentence_tagged = '<det>A</det> <nn>fleet</nn> <in>of</in> <nns>warships</nns><stop>.</stop>'
sentence_xml = '<root>' + sentence_tagged + '</root>'
nok_sent = Nokogiri::XML(sentence_xml)
array = []
nok_sent.root.element_children.each {|child| array << "<span class='" + child.name + "'>"
array
# => ["<span class='det'>A</span>",
# "<span class='nn'>fleet</span>",
# "<span class='in'>of</span>",
# "<span class='nns'>warships</span>",
# "<span class='stop'>.</span>"]
array.join
# => "<span class='det'>A</span><span class='nn'>fleet</span><span class='in'>of</span><span class='nns'>warships</span><span class='stop'>.</span>"
能否請您移動撬會議的有關內容納入這個問題嗎?鏈接到代碼會使問題更難理解,並且可能不會像Stack Overflow上的問題本身一樣。 –