我正在尝试执行以下操作:
Scanner scanner = new Scanner(file);
StringBuilder sb = new StringBuilder();
while (scanner.hasNextLine()) {
sb.append(scanner.nextLine() + "\n");
}
String data = sb.toString();
Pattern p = Pattern.compile("\b[ABD-Z]*C[ABD-Z]*\b");
Matcher m = p.matcher(data);
String a = m.group();
如何访问m
的结果?为什么我的正则表达式不起作用?
我已经尝试过转义反斜杠。
它适用于 http://www.gskinner.com/RegExr/但我无法从 Java 获得任何输出。
请帮忙≥..谢谢。
最佳答案
您需要使用 m.find() 或者 m.match() 最有可能在 while 循环中。
while (m.find()) {
do something with m.group()
}
关于Java 和 RegEx ..如何应用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4749691/