0

这是我的代码:

Pattern p = Pattern.compile(":\\s(.+)\\s[cfs]");
Matcher m1 = p.matcher("Seat 9: -FACERAPE- folded before Flop");
String name = null;
while(m1.find()){
    name = m1.group(1);
}
System.out.println(name);

我在这里尝试了这个正则表达式模式,它在那里工作,但在我的 IDE 中它不起作用。我使用 Eclipse 和 jdk 1.6。我的正则表达式也适用于这些例子:Seat 7: Goldball31 folded before Flop, Seat 4: <*{{{><collected (3.09)。如您所见,问题在于连字符,但我没有得到什么问题。
哦抱歉忘记它打印“null”

4

1 回答 1

0

我没有发现任何问题,但是您的正则表达式应该是:

:\\s(.+?)\\s[cfs]

或者

:\\s(\\S+)\\s[cfs]
于 2012-05-05T12:01:55.020 回答