【发布时间】:2012-09-07 13:36:14
【问题描述】:
如果在变量结果中我有:
<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"/><link rel="stylesheet" type="text/css" href="http://2.ai/styles/hello.css" media="screen"/><title>Welcome to Dotgeek.org * 1.ai</title></head><body>..... etc
如果可能的话,我如何在不使用任何 gem 的情况下解析我现在在 results 变量中拥有的那个 HTML 页面的标题?
【问题讨论】:
-
注意:如果这是用于“一般用途”(即,可以预期任何有效的 HTML),您应该真正使用 HTML 解析器,而不是正则表达式或任何其他不适用的技巧涉及重新创建 DOM
-
为什么不用宝石? Nokogiri 可以快速准确地解析 HTML,并且是推荐的方法。否则请查看 Ruby 附带的ReXML。
-
是的..
Nokogiri.HTML(content).at('title').text #=> "Welcome to Dotgeek.org * 1.ai" -
但是如果你可以用 match 做到这一点而不必依赖另一个 gem(因为我只检查标题)为什么我应该使用 gem ? :)