我有一个像这样的字符串:
“嘿,我是 Peter,我是一名软件工程师。我了解 Java,而且我是 RegEx 的新手”。
我想从“彼得到新”中提取所有字符。
从 gskinner.com/RegExr/ 我可以看到这种模式有效 - (?<=Hey)([^\n]*)(?=Reg)
但是在Java中,它不起作用。有人可以帮忙吗?在 Java 中需要做哪些不同的事情?
我的代码如下所示:
Pattern p = Pattern.compile("(?<=Hey)([^\n]*)(?=Reg)");
Matcher m = p.matcher(p);
m.find();
System.out.println(m.group(0));
当我运行时,我得到一个异常,上面写着“未找到匹配项”。
线程“主”java.lang.IllegalStateException 中的异常:在 java.util.regex.Matcher.group 中找不到匹配项(Matcher.java:485)