regex

String.matches("");

. 任意字符

\d 数字0-8     “12”.matches("\\d"); false  未加数量词之前都只能匹配一个字符

\s空白字符   \S 非空白字符

\w 单词字符 a-zA-Z0-9     \W 非单词字符

数量词:

字符描述
*匹配前面的子表达式零次或多次。
+匹配前面的子表达式一次或多次。
?匹配前面的子表达式零次或一次。
{n}n 是一个非负整数。匹配确定的 n 次。
{n,}n 是一个非负整数。至少匹配n 次。
{n,m}m 和 n 均为非负整数,其中n <= m。最少匹配 n 次且最多匹配 m 次。


范围词:(没有数量词,只能匹配一个字符)

[^abc]     非abc ;

[a-d[m-p]]     a-d或m-p    (并集,啰嗦写法)

边界匹配:

字符描述
^匹配输入字符串开始的位置。如果设置了 RegExp 对象的 Multiline 属性,^ 还会与 \n 或 \r 之后的位置匹配。
$匹配输入字符串结尾的位置。如果设置了 RegExp 对象的 Multiline 属性,$ 还会与 \n 或 \r 之前的位置匹配。
\b匹配一个单词边界,即字与空格间的位置。
\B非单词边界匹配。

\b    单词的开始或结束,不匹配任何字符

tel.matches("0\\d{2,3}-[1-9]\\d{6,7}");

切割 split();

str.split(" +");    //按空格切割 至少一个空格

str.split("(.)\\1+ "); //正则的内容需被复用,则进行分组()      \\1表示第一组的内容,组号从1开始;

((A)(B(C)))   从左开始第一括号:\1  -  \4

第一组: ((A)B(C)))   第二组:(A) 第三组: (B(C))  第四组(C)

替换 replaceAll(String regex ,String content );

str.replaceAll("1[34578]\\d{9}","****");

str.replaceAll("(.)\\1+ ","$1 ");//重叠词变单个单词,在正则方法外使用组内容 需加   $ 组号   ;

查找   Pattern类 正则对象  ; Matcher 匹配器对象;

String reg = "\\b[a-zA-Z]{3}\\b" ;//找三个字母组成的单词​
//使用正则对象编译
Pattern p = Pattern.compile(reg);
//产生Matcher对象
Matcher m = p.matcher("要查找的内容");
while(m.find()){
    ptint(m.group());
}
//真实的一个点匹配:  \\.

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值