正则表达式不匹配

Blu*_*irl 0 java regex

我需要为字符串定义一个模式,并在java eclipse环境中查找句子中的所有匹配项.这在我的代码中:

public static final String EXAMPLE_TEST = "MD_pos ";
public static final String REGEX ="(RB_pos)?(MD_pos|VB_pos|VBD_pos|VBP_pos|VBZ_pos|VBG_pos|VBN_pos) (RP_pos)? (RB_pos)? ";

public void PatMat() {

    Pattern pattern = Pattern.compile(REGEX);
    Matcher matcher = pattern.matcher(EXAMPLE_TEST);

    int count = 0;
    while(matcher.find()) {
        count++;
        System.out.println("found: " + count + " : "
            + matcher.start() + " - " + matcher.end());
        System.out.println("found: " + matcher.group());  
    }
}
Run Code Online (Sandbox Code Playgroud)

带有?签到图案的零件是可选的,因此MD_pos应该匹配.但是每当我调用这个方法时,控制台都没有结果.

Joe*_*Joe 5

REGEX包含三个非可选空格,这些空格不在您尝试匹配的示例字符串中.