常见的正则表达式
1. 数字: ^ [0-9]*$
3. n位的数字:^\d{n}$
4. 至少n位的数字:^\d{n,}$
5. m-n位的数字:^\d{m,n}$
6. 汉字:^ [\u4e00-\u9fa5]{0,}$ 或 /[\u4E00-\u9FA5]/
7. 英文和数字:^ [A-Za-z0-9]+$ 或^ [A-Za-z0-9]{4,40}$
8. 长度为3-20的所有字符:^.{3,20}$
9. 由26个英文字母组成的字符串:^ [A-Za-z]+$
10. 由26个大写英文字母组成的字符串:^ [A-Z]+$
11. 由26个小写英文字母组成的字符串:^ [a-z]+$
元字符
运算符优先级
正则表达式从左到右进行计算,并遵循优先级顺序,这与算术表达式非常类似。
相同优先级的从左到右进行运算,不同优先级的运算先高后低。下表从最高到最低说明了各种正则表达式运算符的优先级顺序:
实例(判断输入的字符串是中文,英文,数字,其它字符)
import java.util.*;
/**
* zhy
*/
public class Sep22 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("请输入字符串:");
String t = sc.nextLine();
if (t.matches("[\u4e00-\u9fa5]+")) {
System.out.println("中文:" + t);
} else if (t.matches("[a-zA-Z]+")) {
System.out.println("En:" + t);
} else if (t.matches("[0-9]+")) {
System.out.println("数字:" + t);
} else {
System.out.println("其它:" + t);
}
}
}