我想提取一些表单标签的值。我在运行时不知道这个值。
我发现了几个接近的线程,但它们都专注于HTML解析和抓取。
我已经拥有HTML源代码和表单字段的名称,我需要它的值。
示例:
<input type="hidden" name="currentRackU" id="currentRackU" value="11">
我可以使用正则表达式来获取&#39; id =&#34; currentRackU&#34;值=&#39;但我现在需要获得下一个字符,直到收尾报价。
答案 0 :(得分:1)
与nokogiri的单行班怎么样?
require 'nokogiri'
s = '<input type="hidden" name="currentRackU" id="currentRackU" value="11">'
Nokogiri::XML.parse(s).root.attributes['id'].value # currentRackU
如果您没有安装nokogiri,则可能需要运行gem install nokogiri
。
答案 1 :(得分:0)
当涉及从HTML / XML文档中提取数据时,我通常使用gem nokogiri - 它可以很好地完成工作。
答案 2 :(得分: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"}