Java Regex不匹配 - 组

时间:2013-08-19 13:41:06

标签: java regex

我知道经常提出这类问题,但是 我无法弄清楚为什么这个RegEx不匹配。 我想检查一下行的开头是否有“M” 最后,我希望路径尽头的路径。 这就是startsWith()不适合我的需要的原因。

line = "M      72208  70779 aab   src\com\aut\testproject\TestDomainf1.java";

if (line.matches("^(M?)(.*)$")) {}

我也尝试过另一种方法:

Pattern p = Pattern.compile("(M?)");
Matcher m = datePatt.matcher(line);
if (m.matches()) {
    System.out.println("yay!");
}

if (line.matches("(M?)(.*)")) {}

由于

1 个答案:

答案 0 :(得分:0)

似乎很简单:

    if (line.startsWith("M")) {
        String[] tokens = line.split("\\s+");
        String path = tokens[tokens.length - 1];
    }