输入若干行字符串,判断每行字符串是否可以作为JAVA语法的合法标识符。 判断合法标识符的规则:由字母(含汉字)、数字、下划线“_”、美元符号“$”组成,并且首字母不能是数字。
时间: 2024-10-01 20:04:32 浏览: 37
要判断一个字符串是否可以作为Java语法的合法标识符,可以使用正则表达式进行匹配。以下是一个示例代码:
```java
import java.util.Scanner;
import java.util.regex.Pattern;
public class IdentifierValidator {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入若干行字符串,每行字符串后按回车键结束:");
// 定义合法的标识符正则表达式
String identifierRegex = "^[a-zA-Z_$][a-zA-Z0-9_$]*$";
Pattern pattern = Pattern.compile(identifierRegex);
while (scanner.hasNextLine()) {
String input = scanner.nextLine();
if (input.isEmpty()) {
break; // 当输入为空时,退出循环
}
boolean isValid = pattern.matcher(input).matches();
if (isValid) {
System.out.println(input + " 是合法的Java标识符。");
} else {
System.out.println(input + " 不是合法的Java标识符。");
}
}
scanner.close();
}
}
```
这段代码首先定义了一个正则表达式`identifierRegex`,用于匹配合法的Java标识符。然后使用`Pattern.compile()`方法编译这个正则表达式,得到一个`Pattern`对象。在循环中,每次读取一行输入,使用`pattern.matcher(input).matches()`方法判断输入的字符串是否与正则表达式匹配。如果匹配,说明输入的字符串是一个合法的Java标识符;否则,说明不合法。
阅读全文