public class SimpleTest {
@Test
public void test() {
String s = "https://www.baidu.comhttp://abc.com/abc.jpg";
Matcher matcher = Pattern.compile("https?://.+").matcher(s);
while (matcher.find()) {
System.out.println(matcher.group());
}
}
}
如上代码, 我想把字符串分割成两个正确的 url, 可是上面的正则始终是"贪婪模式", 一下子匹配到整个字符串.
如果正则写成 https?://.+?
, 又只会匹配到如下结果:
有没有帅气堪比吴彦祖的朋友解答一下我的疑惑呀
1
iyaozhen 2020-01-06 15:33:37 +08:00 1
|
2
JavaFirstMaster OP |
3
optional 2020-01-06 16:46:29 +08:00
这个需求直接 split( http)似乎更好啊。
|
4
JavaFirstMaster OP @optional 字符串中包含的网址数量不定, 而且 http 或者 https 位置也不确定, 所以 split 的话比较麻烦
|