java写 校验一个字符串 包含数字或英文或带.符号
时间: 2023-05-12 19:05:53 浏览: 120
可以使用正则表达式来校验一个字符串是否包含数字或英文或带.符号,具体代码如下:
```java
public static boolean validateString(String str) {
String regex = "^[a-zA-Z0-9\\.]+$";
return str.matches(regex);
}
```
其中,正则表达式"^[a-zA-Z0-9\\.]+$"表示字符串只包含大小写字母、数字和.符号,^表示字符串的开头,$表示字符串的结尾,+表示匹配一个或多个字符。如果字符串符合要求,返回true,否则返回false。
相关问题
java使用正则校验字符串可以包含中文英文数字和-()两个特殊符号其他特殊符号不能存在
可以使用正则表达式来实现该需求,具体的正则表达式如下:
```
^[\\u4e00-\\u9fa5a-zA-Z0-9()-]*$
```
这个正则表达式的意思是:以 0 到多个中文、英文字母、数字、括号和连字符组成的字符串。
在 Java 中使用该正则表达式可以这样写:
```java
String pattern = "^[\\u4e00-\\u9fa5a-zA-Z0-9()-]*$";
String str = "test$string"; // 这个字符串不符合要求
boolean isMatch = str.matches(pattern);
```
其中,`matches` 方法返回一个 boolean 类型的值,表示该字符串是否符合正则表达式的要求。
java 校验字符串是否8位数字
在Java语言中,可以使用正则表达式来校验字符串是否为8位数字的格式。具体实现可以使用以下代码:
```java
String str = "12345678";
if (str.matches("\\d{8}")) {
System.out.println("字符串" + str + "是8位数字!");
} else {
System.out.println("字符串" + str + "不是8位数字!");
}
```
上述代码中,通过使用String类的matches()方法来匹配正则表达式。其中正则表达式“\\d{8}”表示要匹配8个数字的格式。如果字符串str符合这个格式,就输出“字符串XXX是8位数字!”;否则就输出“字符串XXX不是8位数字!”。
需要注意的是,如果输入字符串中含有其他字符(比如字母、符号等),则会输出“字符串XXX不是8位数字!”。如果要限制输入字符串只能包含数字,可以在校验之前使用Java中的isDigit()方法对字符串进行判断。