我正在尝试创建一个检测新类的正则表达式,例如:
public interface IGame {
要么
private class Game {
这是我到目前为止所没有的,但是没有检测到:
(line.matches("(public|protected|private|static|\\s)"+"(class|interface|\\s)"+"(\\w+)"))
任何人都可以给我一些指示吗?
如下更改您的正则表达式以匹配两种类型的字符串格式。
line.matches("(?:public|protected|private|static)\\s+(?:class|interface)\\s+\\w+\\s*\\{");
例:
String s1 = "public interface IGame {"; String s2 = "private class Game {"; System.out.println(s1.matches("(?:public|protected|private|static)\\s+(?:class|interface)\\s+\\w+\\s*\\{")); System.out.println(s2.matches("(?:public|protected|private|static)\\s+(?:class|interface)\\s+\\w+\\s*\\{"));
输出:
true true