java - 如何计算正则表达式捕获组的次数?

标签 java regex grouping

我有正则表达式([A-Za-z]+)

我的示例文本是:

jerk jerk jerk jerk jerk jerk jerk jerk jerk jerk 

我试图找出示例中一个组被捕获的次数。我希望示例输入的答案为 10。

我将如何实现这个?

最佳答案

您必须在正则表达式中指定要匹配的内容。您拥有的内容将与任何字母字符匹配。给你:

import java.io.IOException;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Main {

    public static void main( String[] args ) throws IOException //throws exceptions
    {
        String str = "jerk jerk jerk jerk\njerk jerk jerk\njerk jerk\njerk";
        String regex = "jerk";
        Pattern p = Pattern.compile(regex);
        Matcher m = p.matcher(str);
        int count = 0;
        while(m.find())
            count++;
        System.out.println(count);
    }
}

关于java - 如何计算正则表达式捕获组的次数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7707811/

相关文章:

javascript - 使用 lodash .groupBy。如何为分组输出添加自己的键?

用于计算音节的 Java 正则表达式

java - 正则表达式排除引号内的匹配项

html - 怎么办 正则表达式模式在字符串中的任何地方都不匹配?

java - 如何将 Java ComboBox 的宽度设置为与其所在的 JPanel 一样宽?

java - 使用流在 Java 8 中按 Map 值分组

MySQL,将单词分组并保存到另外两个表中

java - 将 Java 字节码存储在数据库中

java - 在 Windows 上使用 Java 处理 MailDir 格式问题

java - 我的 JscrollPane 没有滚动(垂直)整个图像,