java - 正则表达式找到最短匹配?

标签 java regex

我的程序检索 HTML 页面内容,然后在页面中查找 jpg 图像链接。

我想使用正则表达式来捕获图像,但是我在这里遇到了问题..

为了做到这一点,我使用了该模式

"http.*?jpg"

但这让我捕捉到这样的表达方式: “http://someURL...http://imageURL.jpg”

所以我想我想要找到的是最短的匹配,即找到“jpg”并向后查找第一个“http”

可以使用正则表达式吗?

最佳答案

尝试 http:[^:]*?jpg 这是一种黑客方法,可确保您只有一个分号,因此只有一个 http: block ,您可以进一步选择通用分隔符网址

http:[^:\"\}\{\s]*?\.jpg

关于java - 正则表达式找到最短匹配?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10919950/

相关文章:

java - 我可以将字符串作为参数添加到传统的 for 循环中吗?

写入 csv 的 Java 程序将转到下一个选项卡

regex - grep -c 值 NH :i:1 only for every line in file, 也不是 NH:i:12

javascript - 正则表达式:我只想匹配末尾没有点的单词

r - 如何将多个必要的模式传递给 str_subset?

java - 将 Spring AOP 应用于来自不同应用程序上下文的 bean

java - IntelliJ Java 编译找不到附加模块的符号

ruby - 更简洁的 ruby 正则表达式

regex - Powershell 中正则表达式的\K 等同于什么?

java - 使用java中的REST api创建azure自动化帐户