首页 > 代码库 > java 14 -1 正则表达式

java 14 -1 正则表达式


  正则表达式:符合一定规则的字符串。

1、判断QQ号码是否正确的案例:

 1 public class RegexDemo2 { 2 public static void main(String[] args) { 3 // 创建键盘录入对象 4 Scanner sc = new Scanner(System.in); 5 System.out.println("请输入你的QQ号码:"); 6 String qq = sc.nextLine(); 7  8 System.out.println("checkQQ:" + checkQQ(qq)); 9 }10 11 public static boolean checkQQ(String qq) {12 // String regex ="[1-9][0-9]{4,14}";13 // //public boolean matches(String regex)告知此字符串是否匹配给定的正则表达式14 // boolean flag = qq.matches(regex);15 // return flag;16 17 //return qq.matches("[1-9][0-9]{4,14}");18 19 return qq.matches("[1-9]\\d{4,14}");20 }21 }

 

  正则表达式常用的规则:
    A:字符
      x 字符 x。举例:‘a‘表示字符a
      \\ 反斜线字符。
      \n 新行(换行)符 (‘\u000A‘)
      \r 回车符 (‘\u000D‘)

    B:字符类
      [abc] a、b 或 c(简单类)
      [^abc] 任何字符,除了 a、b 或 c(否定)
      [a-zA-Z] a到 z 或 A到 Z,两头的字母包括在内(范围)
      [0-9] 0到9的字符都包括

    C:预定义字符类
      . 任何字符。我的就是.字符本身,怎么表示呢? \.
      \d 数字:[0-9] //d
      \D 非数字: [^0-9] //D
      \w 单词字符:[a-zA-Z_0-9] //w 包括了所有字母和数字
             在正则表达式里面组成单词的东西必须有这些东西组成
      \W 非单词字符:[^\w] //W

    D:边界匹配器
      ^ 行的开头
      $ 行的结尾
      \b 单词边界
        就是不是单词字符的地方。
        举例:hello world?haha;xixi   空格 ? ;都是单词边界

    E:Greedy 数量词
      X?       X,一次或一次也没有
      X*         X,零次或多次
      X+        X,一次或多次
      X{n}      X,恰好 n 次
      X{n,}     X,至少 n 次
      X{n,m}  X,至少 n 次,但是不超过 m 次

java 14 -1 正则表达式