scjp测试中的正则表达式测试

tur*_*ral 3 java regex

我正在尝试解决关于正则表达式的scjp测试.

这是一个代码......

import java.util.regex.*;

public class TestRegex {
    public static void main(String[] args) {
        Pattern p = Pattern.compile(args[0]);
        Matcher m = p.matcher(args[1]);
        boolean b = false;
        while (b = m.find()) {
            System.out.print(m.start() + m.group());
        }
    }
} 
Run Code Online (Sandbox Code Playgroud)

java TestRegex "\d*" ab34ef 
Run Code Online (Sandbox Code Playgroud)

这个测试的答案是01234456.我理解除了最后一个输出(6)之外的所有内容.由于"ab34ef"中的最后一个索引是5,如何打印6?

任何帮助......

Exp*_*lls 5

\d*表示"零个或多个数字",实际上可以匹配任何内容.6是字符串中最后一个字符后面的空字符串匹配.