在Java正则表达式中匹配多个组

伊莎贝尔·R。

是否可以在正则表达式中找到与字符串的特定部分匹配的所有组?

    Pattern pattern = Pattern.compile("(green trousers)|(green\\s+t)");
    Matcher matcher = pattern.matcher("my beautiful green trousers are red!");
    while (matcher.find()) {
        for (int i = 1; i <= matcher.groupCount(); i++) {
            if (matcher.group(i) != null) {
                System.out.println("group " + i + " matched");
            }
        }
    }

此示例仅返回第一个组作为匹配项,但我也对第二个组也匹配这一事实感兴趣。

阿恩·布拉瑟(Arne Brasseur)

没有直接的方法可以执行此操作,正则表达式会从左到右使用字符串,直到找到匹配项为止。

使用|意味着它将首先检查第一个替代方案,如果与之不匹配则回溯并尝试第二个替代方案。在这种情况下(green trousers)匹配,因此搜索停止并返回匹配。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Java正则表达式匹配器-多个组

来自分类Dev

Java中的正则表达式组匹配

来自分类Dev

正则表达式匹配多个组

来自分类Dev

Python正则表达式:提取多个匹配组

来自分类Dev

正则表达式匹配多个正向预测组

来自分类Dev

Python正则表达式不匹配多个组

来自分类Dev

正则表达式-匹配多个组

来自分类Dev

Java正则表达式分别匹配每个组

来自分类Dev

Java组匹配的正则表达式

来自分类Dev

正则表达式匹配组

来自分类Dev

正则表达式匹配JavaScript中的反向组

来自分类Dev

确定正则表达式中匹配的组

来自分类Dev

正则表达式在引号中查找组匹配

来自分类Dev

替换正则表达式匹配中的命名组

来自分类Dev

Vim中的正则表达式以匹配组捕获

来自分类Dev

无法匹配正则表达式组中的括号

来自分类Dev

匹配字符串,其中多个捕获组在正则表达式中必须不同

来自分类Dev

在 Scala 中匹配多个正则表达式模式时忽略组

来自分类Dev

java解析正则表达式多个捕获组

来自分类Dev

Scala正则表达式中的多个捕获组

来自分类Dev

正则表达式的多个匹配

来自分类Dev

多个正则表达式匹配

来自分类Dev

正则表达式中多个匹配项的混淆

来自分类Dev

正则表达式以匹配网址中的多个单词

来自分类Dev

正则表达式匹配多个表达式?

来自分类Dev

Python正则表达式匹配上一组中匹配的内容(多个选项中的1个)

来自分类Dev

在Java正则表达式中捕获同一组的多个实例

来自分类Dev

Java正则表达式中组的多次出现

来自分类Dev

Java正则表达式中组的多次出现