如果我在其中间的某个地方有一个包含它的html字符串:
<img src="http://images.domain.com/Images/hello.jpg" alt="Failed to Load" />
为了获取图像文件的名称,我将使用什么正则表达式?即hello.jpg
目前我正在使用它:
(?<front>.*<img.*src="http://images.domain.com/Images/)(?<imgName>.*)"(?<end>.*)
但是,它为imgName组找到的值是:
hello.jpg" alt="Failed to Load
有谁知道如何解决这个问题?
答案 0 :(得分:4)
最简单的解决方法是让imgName组匹配除引号之外的任何内容,方法是将。*更改为[^“] *:
(?<front>.*<img.*src="http://images.domain.com/Images/)(?<imgName>[^"]*)"(?<end>.*)
答案 1 :(得分:2)
请参阅why you shouldn't be trying this。
无论如何,请尝试(?<imgName>.*?)
。