标签:逻辑运算 while pre sys 输入 code 表达式 空白 span
正则表达式介绍: 1.什么是正则表达式? 正则表达式实际上就是一串字符串,只不过这个字符串匹配了一定的规则。 2.正则表达式的引入: qq号的校验规则: 1.全部都是数字 2.不能以0开头 3.长度在5-12之间 1.不使用正则表达式检验qq: public static boolean checkQQ(String qq) { //将字符串转换成字符数组 char[] arr = qq.toCharArray(); //遍历字符数组并进行判断 for (char c : arr) { //字符数组中有非数字元素,返回false if (!(c >= ‘0‘ && c <= ‘9‘)) { return false; } } //如果以0开头,返回false if (qq.startsWith("0")) { return false; } //长度判断 int length = qq.length(); if (length < 5 || length > 12) { return false; } //代码执行到这里,说明符合qq号规则 return true; } 2.使用正则表达式进行校验: public class RegEx { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); while (true){ System.out.println("请输入QQ号:"); String qq = scanner.nextLine(); //使用正则表达式进行校验 String regex="[1-9]\\d{4,11}"; System.out.println("是否符合qq号规则:"+qq.matches(regex)); System.out.println("=========分割线==================="); } } } 可以很明显的看出,使用正则表达式对字符串进行校验更加方便简洁。 3.常用正则表达式的使用: 1.字符类:注意[]只代表一个字符 1. [abc]:代表a或者b,或者c字符中的一个。 2. [^abc]:代表除a,b,c以外的任何字符。 3. [a-z]:代表a-z的所有小写字符中的一个。 4. [A-Z]:代表A-Z的所有大写字符中的一个。 5. [0-9]:代表0-9之间的某一个数字字符。 6. [a-zA-Z0-9]:代表a-z或者A-Z或者0-9之间的任意一个字符。 7. [a-dm-p]:a 到 d 或 m 到 p之间的任意一个字符。 2.逻辑运算符: 1. &&:并且 2. | :或者 3.预定义字符:注意‘\‘在使用的时候要使用两个‘\\‘,因为要进行转义 1. "." : 匹配任何字符。 2. "\d":任何数字[0-9]的简写; 3. "\D":任何非数字\[^0-9\]的简写; 4. "\s": 空白字符:[ \t\n\x0B\f\r] 的简写 5. "\S": 非空白字符:\[^\s\] 的简写 6. "\w":单词字符:[a-zA-Z_0-9]的简写 7. "\W":非单词字符:\[^\w\] 4.数量词:‘X‘代表的是任意一个正则表达式 1. X? : 0次或1次 2. X* : 0次到多次 3. X+ : 1次或多次 4. X{n} : 恰好n次 5. X{n,} : 至少n次 6. X{n,m}: n到m次(n和m都是包含的) 5.分组:使用()进行分组: (ab){3}:ab作为一组,重复出现三次;
标签:逻辑运算 while pre sys 输入 code 表达式 空白 span
原文地址:https://www.cnblogs.com/lyle-liu/p/12829461.html