Java使用正则表达式删除一段代码中注释的所有代码
时间: 2024-01-11 07:02:43 浏览: 102
可以使用Java中的正则表达式和字符串替换来删除代码中的注释。以下是一个示例代码:
```java
String code = "public class MyClass {\n"
+ " // This is a comment\n"
+ " public static void main(String[] args) {\n"
+ " System.out.println(\"Hello, World!\"); // This is also a comment\n"
+ " }\n"
+ "}";
String regex = "/\\*.*?\\*/|//.*?$";
String codeWithoutComments = code.replaceAll(regex, "");
System.out.println(codeWithoutComments);
```
这段代码将输出以下结果:
```
public class MyClass {
public static void main(String[] args) {
System.out.println("Hello, World!");
}
}
```
正则表达式 `/\/\*.*?\*\/|\/\/.*?$/` 匹配两种不同类型的注释:`/* ... */` 和 `// ...`。`|` 符号表示或的关系。`.*?` 匹配任意字符,`?` 表示非贪婪匹配,即尽可能少地匹配字符。`$` 表示匹配行尾,以防止匹配到多行注释。
`replaceAll(regex, "")` 方法将匹配到的注释替换为空字符串,从而删除注释。
阅读全文