【问题标题】:Regex for the value of an HTML PropertyHTML 属性值的正则表达式
【发布时间】:2013-11-29 00:28:45
【问题描述】:

我有很多这样的链接:

        <A HREF="http://www.taboola.com/" ADD_DATE="1385139696" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACx0lEQVQ4jXWTTWhdZRCGn5nvu+ee5CaxiTGtqUaKiJjYRRFNukhBIgUlCzeuFCy0lZaCUCiuBI8LQXcWRURFUXAjbq0i3fgTaFGktaVmowuRGhqsNya59557zjfjIkosxHc18MAsnplX2I7AJ7o1XnMoHPBtVghMyw4MoFB2TKHg8v8MtuHM2alsfOghsFws3CyXf11itdgAYKwYyWfuetiwXeZxrb764/e0X28DKgDNQ++eamTNlyWE2wkZ1B3MwrXNtc7TUA22bhv5QNXuI+RC6pFMfi675fNp6fg5Ye6dx4eG83MawOp6VdBl9/qgZgPRqv4K7lGz5rhV3b4QL5un6dDIW1ZXGxtrm/PazPWoCm5GKsv6hfXzRw7VST7EJYnYhCijuFtV+dn180fmyiq96p5MQhhqNuMzqrGxFxy3qq666fI/4r5BJAA1buaG1CZfURQEkYuYieAWGuxTr+q/UHGRRiCGPVCYO9M4vuVYEFVikLspCjO3SSSAI2a0g0wuZiFvPqkkCSoPxn2LMzGGZ0V80JI7IlEEFH8gm3pit8Z4LCjjjkjZqV4K9tv6Fd87MxqygdnQHNwTmyOzojKYzDu9bv9oEi6EkB3WbGBMB0fnVeMd7iplr/9avXT8LQECkJh7fzbP02Nissvxdq/b/4zvTl0CiAffXmhketiRYdz/6PXTF1w4uQSIAJI9+tErkbrX6fQ/5eKJZcB2/r4zLWbv3z8wkj2VyvKH/tfPfRwB1+CPZK2JBQ03XvSF91ZdGr8grIh7BwwnDIFPiqV7Nei4tiakX10/DRAB6uRf1t32AYn5WNAwCT65dQHH3QFFZKs9bjX15s3rnvzKrV048OY9zeGBxdiI8yK2H6/HQXLAEN109IYnu1Ql+7ZaXf+cn07/DmT/LpBb6rn7TIupO8fQxjApJnp/trm60oY3yv8IEYC/AVWrRrXbUwqeAAAAAElFTkSuQmCC">Taboola - Content you may like</A>

我想删除整个ICON 和ADD_DATE 属性及其值。

我正在使用带有正则表达式查找/替换的 sublime,但我不确定如何编写正则表达式来获取 ICON=" 和 " 之间的所有内容

任何帮助将不胜感激!

【问题讨论】:

  • 要获取 ICON 的属性,只需使用以下正则表达式,ICON=\"(.*)" 这会将所有字符放在变量中的引号之间
  • @Xabier:只有在没有其他引号的情况下……
  • @Xabier 这将抓取所有文本,直到最后一个“
  • 感谢@PawelDuda!那行得通:)
  • 用更新的解决方案检查我的答案,没有“?”有时可能会失败

标签: regex sublimetext2 sublimetext


【解决方案1】:

这应该有效(必要时转义引号):

ICON="[^"]*"

ICON=\"(.*)" 不起作用的原因是正则表达式可能会“贪婪”。这意味着如果它可以匹配更多的字符串来满足模式,它会。

您可以指定非贪婪搜索,例如 ICON=".*?" 或显式声明对非引号的原子的匹配项,如上述答案。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-01
    • 2010-11-25
    • 1970-01-01
    • 2010-11-24
    • 1970-01-01
    相关资源
    最近更新 更多