Java正则表达式获取img src

时间:2011-09-17 17:01:49

标签: java regex

我正在尝试从html页面获取数据。此数据是图像链接。页面总是有不同的内容,所以唯一的方法是使用正则表达式。页面上只有一个匹配,具有以下样式

<img src="imglink" alt="texttext textex" style="border:1px solid #FFFFFF"/>

我用什么来获取imglink

"<img src=\"(.*)\""

有没有我不知道使用正则表达式的东西?我必须像馅饼一样容易,但它会在&lt;之后得到我的所有文字。在/&gt;之前

2 个答案:

答案 0 :(得分:3)

尝试使用非贪婪版本

"<img src=\"(.*?)\""

为了匹配尽可能少的字符。

请注意:如果您具有已知的简单文本结构,请仅使用正则表达式来处理html或xml。对于任意htlm / xml,请不要使用正则表达式。

答案 1 :(得分:2)

根据经验,当我尝试在分隔符之间选择字符时,我指出将“下一个预期的分隔符char”放在选择子句中而不是“。”。

所以在这种情况下:

"<img src=\"([^\"]*)\""