什么是正则表达式?

什么是正则表达式?,第1张

正则表达式:正确规则的表达式,是一种独立的定义规则的语法,很多语言都支持,作用,定义一种数据规则,用来校验数据是否符合我定义的规则。

在Java 中 可以用字符串来定义正则表达式:如代码

public class demo1 {
    public static void main(String[] args) {
        String s = "a"; //匹配a这个字符
        s = "[a,b,c]";//[] 是我列表中的某一个
        s = "\n";//换行符
        s = "[0123456789]";//匹配数字
        s = "[a-z]";//匹配小写字母
        s = "[A-Z]";//匹配大写字母
        s = "[0-9]";//匹配数字
        s = "[a-zA-Z0-9]";//匹配大写小写数字
        s = "[^0-9]"; //不是数字  ^取反
        s = "."; //匹配单个任意字符
        s = "..";//匹配两个任意字符
        s = "\."; //\转义字符  \. 只代表.本身
        s = "a|b"; // | 或者
        s = "\d";  //\d 和他的意思[0-9] 一样
        s = "\D";  //\D 和他的意思[^0-9] 一样
        s = "\w";// 跟[a-zA-Z_0-9] 意思一样
        s = "\W";// 跟[^a-zA-Z_0-9] 意思一样
        s = "\s"; //匹配空格字符
        s = "\S";//不是空格
        s = "[0-9a-zA-Z]+"; //+ 一次或多次
        s = "[a-z]*"; //零次或多次  大于等于1次 都算多次
        s = "[A-Z]?"; //零次或1次
        s = "[0-9]{5,}"; //至少5次
        s = "[0-9]{5,15}"; //大于等于5 小于等于15
        s = "[0-9]{10}"; //正好11次g
        boolean g = "1234567891".matches(s);
        System.out.println(g);

    }
}

String中与正则表达式有关的方法:

public boolean matches(String regex);

用你输入的对象去匹配这个规则

import java.util.Scanner;
public class demo1 {
    public static void main(String[] args) {
        String s ="[123456789]{7,}";
        Scanner sc = new Scanner(System.in);
        String ss = sc.nextLine();
        boolean b = ss.matches(s);
        System.out.println(b);
    }
}

public String[] split(String regex);

匹配你的规则进行切割,从而分成几部分放入字符串数组,而匹配的部分消失不见

public class demo1 {
    public static void main(String[] args) {
        String s = "abcdecfg";
        String[] S = s.split("c");
        System.out.println(S[0]);
        System.out.println(S[1]);
        System.out.println(S[2]);
    }
}

public String replaceAll(String regex,String replacement);

把匹配你设定规则的替换为你想替换的

public class demo1 {
    public static void main(String[] args) {
        String s = "abcdecfg";
        String n = s.replaceAll("c","*");
        System.out.println(n);
    }
}

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/870433.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-13
下一篇2022-05-13

发表评论

登录后才能评论

评论列表(0条)

    保存