Java正则表达式组匹配空格

标签 java regex

我有这个正则表达式,我的输出似乎与每个空格匹配,但捕获组只是字母字符。我一定错过了什么。

String regexstring = new String("1234567                    Mike                     Peloso          ");

    Pattern pattern = Pattern.compile("[A-Za-z]*");

    Matcher matcher = pattern.matcher(regexstring);

    while(matcher.find())
    {
        System.out.println(Integer.toString(matcher.start()));
        String someNumberStr = matcher.group();
        System.out.println(someNumberStr);

    }

最佳答案

没有捕获组,但需要使用+ quantifier (意味着 1 或更多次)。 * 量词与前面的元素匹配零次次或多次,并且 creates a disaster of output...

Pattern pattern = Pattern.compile("[A-Za-z]+");

然后打印匹配结果:

while (matcher.find()) {
    System.out.println(matcher.start());
    System.out.println(matcher.group());
}

Working Demo

关于Java正则表达式组匹配空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25129084/

相关文章:

javascript - 创建一个正则表达式来验证只有一个数字的字符串

java - replaceAll 的问题(我想删除所有出现的 [*])

javascript - Javascript 中特殊字符的正则表达式

regex - 时间戳 - 正则表达式从一种格式更改为另一种格式

java - 如何使用 Axis WSDL2Java 生成的文件?

java - JAVA、JNI 和 C 应用程序的内存占用问题

java - 了解输出流

java - 如何使用 split function() 拆分此字符串

java - 二进制计算器赋值 (Java)

javascript - 如何获取最后一个/特殊字符后的数字