0

我正在尝试计算任何给定 Java 字符串中的 URL 数量:

String test = "Hello World!";
String urlRegex = "<\\b(https?|ftp|file)://[-a-zA-Z0-9+&@#/%?=~_|!:,.;]*[-a-zA-Z0-9+&@#/%=~_|]>";
pattern = Pattern.compile(urlRegex);
matcher = pattern.matcher(test);
numUrls = matcher.groupCount();
System.err.println("numUrls = " + numUrls);

我惊讶地发现这numUrls不是零。关于为什么的任何想法?提前致谢!

4

1 回答 1

0

来自 javadocMatcher#groupCount()

返回此匹配器模式中的捕获组数。

您的模式有一组...(https?|ftp|file)...,因此它返回 1。

于 2013-03-19T18:35:15.530 回答