正则表达式帮助,来自标签子标签内属性的数据

时间:2012-11-01 13:17:50

标签: java html regex parsing

所以我想快速推出那个正则表达式是这个问题的合适解决方案,它解析的html总是和格式相同。

我对解析感兴趣的特定html看起来类似于以下

<a href="" target="" onCick=""><img style="" onmouseover="" onmouseout="" src="" alt="" /></a>

我有兴趣从该字符串中拉出'src'和'alt'标签。正则表达式真的让我感到困惑,我不明白我在做什么。所以真正的帮助将不胜感激。意思是很多,谢谢。

1 个答案:

答案 0 :(得分:1)

您使用的是哪种语言? Regexp方言有一些细微差别。

无论哪种方式,对于JavaScript,您都可以使用

var match = /src="(.*?)"\s+alt="(.*?)"/.exec(pieceOfHTML);
// match[1] should be the src, match[2] the alt

或Python,

match = re.search(r'src="(.*?)"\s+alt="(.*?)', pieceOfHTML)
# match.group(1) and match.group(2) respectively

编辑重新评论:

<a href=".*?"\s+target=".*?"\s+onCick=".*?"><img style=".*?"\s+onmouseover=".*?" onmouseout=".*?"\s+src="(.*?)"\s+alt="(.*?)"

应该是一个不错的正则表达式,只匹配所需的模式,以及对空白的宽容。