这个脚本是一个更大的脚本的一部分,当我运行这个脚本时,我也会打印出“<p></p>
”。我该如何删除?
我使用了这个正则表达式:m.gsub!(/(?=\S)(\d|\W)/,"")
但它只删除了字符“&lt;”和“/&gt;”
这是我的剧本:
require 'open-uri'
require 'rexml/document'
include REXML
doc = REXML::Document.new(open('http://testnavet.skolverket.se/SusaNavExport/EmilObjectExporter?id=184594606&strId=info.uh.gu.GS5&EMILVersion=1.1').read)
doc.elements.each("//*[name()='ct:text'] | /ns:educationInfo/ns:extensionInfo/gu:guInfoExtensions/gu:guSubject/gu:descriptions/gu:description"){
|e| m = e.text
puts "Description: " + m
}
答案 0 :(得分:1)
啊,所以你要删除HTML标签。如果是这样,你可以这样做:
str.gsub(/<.+?>/, "")
因此,“&lt; div&gt; Hello world!&lt; / div&gt;”成为“Hello world”