Ruby on rails 在两个指定标记之间搜索内容
我将Nokogiri安装到Rails项目中,目前它可以运行“”,没有任何问题 我正在尝试创建一个Rails项目,该项目将解析来自的电影脚本,进行单词计数,然后显示该部分中出现最多的单词。我已经确定脚本保存在“表”中: 我很难理解如何设置CSS约束来获取这个表。我知道它介于这些Ruby on rails 在两个指定标记之间搜索内容,ruby-on-rails,ruby,css-selectors,nokogiri,Ruby On Rails,Ruby,Css Selectors,Nokogiri,我将Nokogiri安装到Rails项目中,目前它可以运行“”,没有任何问题 我正在尝试创建一个Rails项目,该项目将解析来自的电影脚本,进行单词计数,然后显示该部分中出现最多的单词。我已经确定脚本保存在“表”中: 我很难理解如何设置CSS约束来获取这个表。我知道它介于这些 我如何设置Nokogiri的CSS约束,在两个标记(如)之间提取内容,然后过滤掉输出中出现的不相关标记(如) 您可以使用css方法选择器:doc.css('pre b'),它将获取每个标记中的每个标记: doc.css('
我如何设置Nokogiri的CSS约束,在两个标记(如
)之间提取内容,然后过滤掉输出中出现的不相关标记(如
) 您可以使用css
方法选择器:doc.css('pre b')
,它将获取每个
标记中的每个
标记:
doc.css('pre b')。每个do | b|u标记|
#b_标记将是一个字符串,包含类似“此文本为粗体”`
结束
这可能不是最优雅的解决方案,但它为我带来了好处
在控制器中,我定义了以下内容:`
然后在视图中
您可以使用css
方法选择器:doc.css('pre b')
,它将获得每个
标记中的每个
标记,也可以作为一个附加项(因为我无法发布更多链接),我一直在看Nokogiri网站上的教程()和各种StackOverflow问题(),但是我仍然对设置这个问题感到困惑。欢迎-你应该在答案部分而不是问题中发布你的答案。也没有必要将问题标记为已解决,因为接受答案就可以解决问题。但只有当答案是您选择的答案时,才发布您的答案。这一点以及有史以来最直接的示例()帮助我找到了答案。谢谢!:)
<table width=100% border=0 cellpadding=5 class=scrtext><tr><td class=scrtext><pre><html><head></head><body>
<b>PERSON1</b>
They say some dialogue
<b>PERSON2</b>
They say some more
</pre></table>
#Save as a temp. file
tmp_file = open('http://www.imsdb.com/scripts/Authors-Anonymous.html')
#Parse the temp. file
doc = Nokogiri::HTML(tmp_file)
doc.search("//pre")
doc.css('pre b').each do |b_tag|
# b_tag will be a String containg like `<b>this text is bold</b>`
end
def index
page = [THE_URL]
doc = Nokogiri::HTML(open(page))
@content = doc.css('b').remove
@content = doc.css('pre')
puts @content
end
<%=@content %>