Java基本正则表达式

    • Java 正则表达式
    • 匹配单个字符
  • 匹配多个字符

  • 匹配0次或者一次

  • 匹配数字或者非数字

  • 匹配任何字符类字符0-9 a-z A-Z

  • 或者

  • 匹配中文字符

  • 匹配空白字符

本文主要介绍java正则表达式的基本用法,常用的匹配。

Java 正则表达式


正则表达式定义了字符串的模式。

正则表达式可以用来搜索、编辑或处理文本。

正则表达式并不仅限于某一种语言,但是在每种语言中有细微的差别。

下面为案列及代码。

注意:

matches方法中,() 中双引号中的内容为正则表达式

匹配单个字符

String str1 = “a”;

//只匹配字符a

System.out.println(str1.matches(“a”));//TRUE

//匹配0-9,a-z,A-Z 的单个字符

System.out.println(str1.matches(“[a-z0-9A-Z]”));//TRUE

//^在[]里面代表非 , 匹配不是0-9,a-z,A-Z 的单个字符

System.out.println(str1.matches(“[^a-z0-9A-Z]”));//false

匹配多个字符

String str2 = “java”;

//直接匹配相同的字符串

System.out.println(str2.matches(“java”));//true

//一个字符一个字符的匹配

System.out.println(str2.matches(“[a-z0-9A-Z][a-z0-9A-Z][a-z0-9A-Z][a-z0-9A-Z]”));//true

//{}代表几次

System.out.println(str2.matches(“[a-z0-9A-Z]{4}”));//true

//+代表一次或者多次

System.out.println(str2.matches(“[a-z0-9A-Z]+”));//true

System.out.println(“”.matches(“[a-z0-9A-Z]+”));//false

//*表示0次或者多次

System.out.println(str2.matches(“[a-z0-9A-Z]*”));//true

System.out.println(“”.matches(“[a-z0-9A-Z]*”));//true

匹配0次或者一次

String str3 = “abc”;

//匹配3-4个字符

System.out.println(str3.matches(“[a-z0-9A-Z][a-z0-9A-Z][a-z0-9A-Z][a-z0-9A-Z]?”));//true

System.out.println(“abcde”.matches(“[a-z0-9A-Z][a-z0-9A-Z][a-z0-9A-Z][a-z0-9A-Z]?”));//false

匹配数字或者非数字

**注意:

此时使用 \ \ 是因为 \ 为转义**

String str4 = “123”;

String str5 = “abc”;

//匹配数字 /d

System.out.println(str4.matches(“\d+”));//true

System.out.println(str5.matches(“\d+”));//false

//匹配非数字

System.out.println(str4.matches(“\D+”));//false

System.out.println(str5.matches(“\D+”));//true

匹配任何字符类字符0-9 a-z A-Z

String str6 = “123”;

String str7 = “abc”;

String str8 = “%^&”;

//\w 匹配 0-9 a-z A-Z

System.out.println(str6.matches(“\w+”));//TRUE

System.out.println(str7.matches(“\w+”));//TRUE

System.out.println(str8.matches(“\w+”));//FALSE

//\W 匹配非 0-9 a-z A-Z

System.out.println(str6.matches(“\W+”));//FALSE

System.out.println(str7.matches(“\W+”));//FALSE

System.out.println(str8.matches(“\W+”));//TRUE

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值