【问题标题】:Regex: getting html attributes正则表达式:获取 html 属性
【发布时间】:2012-05-03 17:58:26
【问题描述】:

我尝试获取所有 html 属性,但只获取一个封装其他属性
我的模式是:

(\S+)=((".*")|('.*')|(\S*(?=(\s+))))

内容是:

<a href="html.aspx" target="_blank" />

只有一个匹配返回:

  • href="html.aspx" target="_blank"

但我希望它是:

  • href="html.aspx"
  • target="_blank"

任何帮助将不胜感激。

【问题讨论】:

    标签: regex


    【解决方案1】:

    这是因为您正在使用与.*" 的贪婪匹配(默认),这将一直持续到找到last "。试试这个正则表达式:

    (\S+)=((".*?")|('.*?')|(\S*(?=(\s+))))
    

    .*?" 告诉正则表达式搜索到第一个 ",而不是最后一个。

    【讨论】:

      猜你喜欢
      • 2014-03-01
      • 1970-01-01
      • 2011-02-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-26
      • 1970-01-01
      相关资源
      最近更新 更多