0

我想提取一些表单标签的值。我在运行时不知道该值。

我发现了几个接近的线程,但它们都专注于 HTML 解析和抓取。

我已经有了需要值的 HTML 源代码和表单字段的名称。

例子:

<input type="hidden" name="currentRackU" id="currentRackU" value="11">

我可以使用正则表达式来获取 'id="currentRackU" value=' 但我现在需要获取下一个字符,直到结束引号。

4

3 回答 3

1

这个带nokogiri的单线怎么样?

require 'nokogiri'
s = '<input type="hidden" name="currentRackU" id="currentRackU" value="11">'
Nokogiri::XML.parse(s).root.attributes['id'].value # currentRackU

gem install nokogiri如果您没有安装 nokogiri ,您可能需要运行。

于 2012-07-13T19:40:07.820 回答
0

在从 HTML/XML 文档中提取数据时,我通常使用 gem nokogiri - 它以一种优雅的方式很好地完成了这项工作。

于 2012-07-13T07:09:02.790 回答
0

虽然 HTML/XML 确实不应该使用正则表达式进行解析,但这里有一些可以帮助您的东西。它扫描标签并返回属性及其值的哈希:

html = '<input type="hidden" name="currentRackU" id="currentRackU" value="11">'
Hash[html.scan(/(\w+)="(.*?)"/)]
#=> {"type"=>"hidden", "name"=>"currentRackU", "id"=>"currentRackU", "value"=>"11"}
于 2012-07-13T07:30:59.300 回答