正则表达式regex

本文连接https://blog.csdn.net/MDWJJ/article/details/105906666

正则表达式基本规则

String regex =[a-z];   //a到z任意一个字符
“[a-z]”            a到z任意一个字符
“[a-z]+”           一个或多个a到z
“[^abc]”           除了a、b、c的任意字符
“[a-zA-Z0-9]”      a-zA-Z0-9任意一字符
“[a-z&&[^abc]]”    a-z除了a、b、c任意一字符
[a-d[m-p]]         a-d或m-p:[a-dm-p]

String  regex = “\\d”;     //[0-9]
“\\d”     [0-9]
“\\D”     [^0-9]
“\\s”     [ \t\n\x0B\f\r]空白字符
“\\S”     [^ \t\n\x0B\f\r]空白字符
“\\w”     [a-zA-Z0-9]
“\\W”     [^a-zA-Z0-9]
“.”       任意一个字符

X?        0或一个X
X*        0或任意个X
X+        1到任意个X
X{n}      n个X
X{n,}     n到任意个X
X{n,m}    n到m个X

“()”     表示分组
“^”      开头
“$”      结尾     //”^aaa$”表示由aaa开头和结尾 “aaa1””qaaa”都不满足该正则
“\\.”    表示一个“.”

.*?      匹配任意数量的重复
a.*b     匹配最长的以a开始,以b结束的字符串

exp1(?=exp2)  前瞻:查找exp2前面的exp1
(?<=exp2)exp1 后顾:查找exp2后面的exp1
exp1(?!exp2)  负前瞻:查找后面不是exp2的exp1
(?<!exp2)exp1 负后顾:查找前面不是exp2的exp1

正则表达式常用方法

String str;
1.boolean matches(String regex)方法:
  boolean match = str.matches(regex);
2.String[] split(String regex)方法:
  String[] arr = str.split("[0-9]");
  //返回按正则分割的数组,arr长度为满足正则表达式(数字)个数加1
  // String[] arr = “12a12a”.split(“[a-z]”); 返回{12, 12, }(长度3,后一个为null)
3.String replaceAll(String regex, String str)
  String str1 =” 12a12a”.replaceAll(“[a-z]”, “#”);
  //返回 ”12#12#”

举例

用正则表达式匹配一个带有区号和空格的电话号码
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值