java写 校验一个字符串 是否纯英文或纯汉字
时间: 2023-05-12 11:06:08 浏览: 48
可以使用正则表达式来校验一个字符串是否纯英文或纯汉字。以下是Java代码示例:
// 校验是否纯英文
public static boolean isEnglish(String str) {
return str.matches("[a-zA-Z]+");
}
// 校验是否纯汉字
public static boolean isChinese(String str) {
return str.matches("[\\u4e00-\\u9fa5]+");
}
// 示例用法
String str1 = "hello";
String str2 = "你好";
System.out.println(isEnglish(str1)); // true
System.out.println(isEnglish(str2)); // false
System.out.println(isChinese(str1)); // false
System.out.println(isChinese(str2)); // true
相关问题
java写 校验一个字符串的开头 必须是数字或者英文或者汉字
可以使用正则表达式来校验一个字符串的开头是否为数字、英文或汉字。以下是一个示例代码:
```java
public static boolean validateString(String str) {
String regex = "^[0-9a-zA-Z\u4e00-\u9fa5].*";
return str.matches(regex);
}
```
其中,正则表达式 `^[0-9a-zA-Z\u4e00-\u9fa5].*` 表示字符串开头必须是数字、英文或汉字。如果字符串开头不符合要求,则返回 false,否则返回 true。
一个字符串至少三句中文,且各不相同 通过Java代码进行校验
我们可以编写Java代码来校验一个字符串是否至少包含三个不相同的中文句子。以下是一个简单的示例代码:
```java
public static boolean checkString(String str) {
int count = 0;
String[] sentences = str.split("。"); // 按照句号分割句子
for (String sentence : sentences) {
if (!sentence.trim().isEmpty()) { // 去除空白句子
count++;
}
}
return count >= 3;
}
```
这个方法接收一个字符串作为参数,首先按照句号分割句子,然后遍历每一个句子,如果该句子不是空白字符串,就将计数器加1。最后返回计数器是否大于等于3,即是否至少包含三个不为空的中文句子。
你可以在调用这个方法的时候传入一个字符串,如下所示:
```java
String str = "今天天气真好,阳光明媚,万物生机勃勃。我喜欢在这样的天气里散步,感受大自然的美好。晴空万里,心情也格外愉悦。";
boolean result = checkString(str);
System.out.println(result); // 输出 true
```
这个代码会输出 true,表示传入的字符串至少包含三个不相同的中文句子。如果你传入的字符串不符合要求,代码会输出 false。