对用户输入的信息,包括:姓名、地址、邮政编码、身份证号码、电话号码、电子邮箱等文本信息进行解析,并进行初步的合法性判断java实现
时间: 2023-12-22 09:05:00 浏览: 28
你可以使用Java中的正则表达式对用户输入的文本信息进行解析和初步的合法性判断。以下是一个简单的示例代码,可以解析并判断用户输入的文本信息是否合法:
```java
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class TextParser {
public static boolean isValidName(String name) {
// 正则表达式匹配姓名,只允许中英文字符和空格
Pattern pattern = Pattern.compile("^[\\u4e00-\\u9fa5a-zA-Z\\s]+$");
Matcher matcher = pattern.matcher(name);
// 判断是否匹配成功
return matcher.matches();
}
public static boolean isValidAddress(String address) {
// 正则表达式匹配地址,只允许中英文字符、数字和空格
Pattern pattern = Pattern.compile("^[\\u4e00-\\u9fa5a-zA-Z0-9\\s]+$");
Matcher matcher = pattern.matcher(address);
// 判断是否匹配成功
return matcher.matches();
}
public static boolean isValidPostalCode(String postalCode) {
// 正则表达式匹配邮政编码,必须是6位数字
Pattern pattern = Pattern.compile("^\\d{6}$");
Matcher matcher = pattern.matcher(postalCode);
// 判断是否匹配成功
return matcher.matches();
}
public static boolean isValidIDCard(String idCard) {
// 正则表达式匹配身份证号码,必须是18位数字,最后一位可以是数字或字母X
Pattern pattern = Pattern.compile("^\\d{17}[0-9X]$");
Matcher matcher = pattern.matcher(idCard);
// 判断是否匹配成功
return matcher.matches();
}
public static boolean isValidPhoneNumber(String phoneNumber) {
// 正则表达式匹配电话号码,必须是11位数字
Pattern pattern = Pattern.compile("^\\d{11}$");
Matcher matcher = pattern.matcher(phoneNumber);
// 判断是否匹配成功
return matcher.matches();
}
public static boolean isValidEmail(String email) {
// 正则表达式匹配电子邮箱
Pattern pattern = Pattern.compile("^\\w+@(\\w+\\.)+[a-z]{2,3}$");
Matcher matcher = pattern.matcher(email);
// 判断是否匹配成功
return matcher.matches();
}
public static void main(String[] args) {
String name = "张三";
String address = "北京市海淀区中关村大街1号";
String postalCode = "100086";
String idCard = "11010119800101001X";
String phoneNumber = "13800138000";
String email = "test@example.com";
if (isValidName(name)) {
System.out.println("Valid name");
} else {
System.out.println("Invalid name");
}
if (isValidAddress(address)) {
System.out.println("Valid address");
} else {
System.out.println("Invalid address");
}
if (isValidPostalCode(postalCode)) {
System.out.println("Valid postal code");
} else {
System.out.println("Invalid postal code");
}
if (isValidIDCard(idCard)) {
System.out.println("Valid ID card");
} else {
System.out.println("Invalid ID card");
}
if (isValidPhoneNumber(phoneNumber)) {
System.out.println("Valid phone number");
} else {
System.out.println("Invalid phone number");
}
if (isValidEmail(email)) {
System.out.println("Valid email");
} else {
System.out.println("Invalid email");
}
}
}
```
你可以根据需要,编写类似的函数,对其他文本信息进行解析和初步的合法性判断。然后,在你的应用程序中,调用这些函数,对用户输入的文本信息进行处理。
相关推荐
![-](https://csdnimg.cn/download_wenku/file_type_lunwen.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)