Min*_*ure 5 html ruby nokogiri
我有一个Nokogiri::XML::Element看起来像这样的:
<div class="berg">This is some text!</div>
Run Code Online (Sandbox Code Playgroud)
我想做的只是从 div(即 Nokogiri 元素)中提取文本,然后用新标签包裹文本,如下所示:
<div class="berg"><span>This is some text!</span></div>
Run Code Online (Sandbox Code Playgroud)
Nokogiri.wrap函数似乎用新标签包装标签,而不是它们的文本内容,我想知道如何包装内部标签内容。
您可以设置inner_htmldiv 元素的 。这是一个工作示例:
html = '<div class="berg">This is some text!</div>'
doc = Nokogiri::HTML.fragment(html)
berg = doc.at('div.berg') # Or xpath, or whatever method you choose
# Wrap the text in <span>
berg.inner_html = "<span>#{berg.text}</span>"
puts doc #=> <div class="berg"><span>This is some text!</span></div>
Run Code Online (Sandbox Code Playgroud)
重要的部分是使用inner_html,添加<span>元素并将现有文本元素放入其中。
| 归档时间: |
|
| 查看次数: |
1408 次 |
| 最近记录: |