【问题标题】:Regex: HTML, contents正则表达式:HTML、内容
【发布时间】:2011-06-10 20:54:11
【问题描述】:

我在使用正则表达式获取 HTML 中的字段值时遇到了一点问题。

在 html 中有一个 input 标签是唯一的,在下面。

<input type="hidden" name="t" value="I-WANT-TO-GET-THIS"/>

我想知道,仅使用正则表达式,如何获得“I-WANT-TO-GET-THIS”(不带引号)。

非常感谢您抽出宝贵时间 保罗

【问题讨论】:

标签: html regex


【解决方案1】:

正则表达式:

<input [^>]*?value="([^"]*)"

【讨论】:

    【解决方案2】:

    在此处查看一个工作示例:http://www.rubular.com/r/mG8AYSd5A1

    图案:

    <input [^>]*? value="(.*)"
    

    【讨论】:

    • 啊,为什么?你能解释一下吗?
    • 例如:&lt;input ... value="foo"/&gt;&lt;a href="broken.interwebz"&gt;,你会得到foo"/&gt;&lt;a href="broken.interwebz。最好使用[^"]*,但也可以使用.*?
    • 感谢您指出我。但我只为给定的示例选择了它input .....
    • 它没有按我想要的方式工作。例如:rubular.com/r/XKUdr9a3jh 即使名称不等于 t,它也会获取输入的值
    【解决方案3】:

    你是怎么做到的?最好的办法是使用 HTML 解析器。带有 HTML 的正则表达式有其自身的问题,请参阅链接: RegEx match open tags except XHTML self-contained tags

    【讨论】:

      猜你喜欢
      • 2014-08-17
      • 1970-01-01
      • 2016-04-06
      • 2011-11-11
      • 1970-01-01
      • 2010-09-26
      • 2010-11-18
      • 2015-12-10
      • 2014-04-11
      相关资源
      最近更新 更多