正则表达式学习笔记

[1-9]表示一个字符,在0-9之间取值
{1,14}表示次数,1~14次
[0,9]{1,14}表示出现1-14次0~9


字符
x 字符x
\\ 反斜杠
[abc] 判断某一位是a、b、c中的一个
[^abc] 判断某一位不是a、b、c(否定)
[a-zA-Z] a到z或者A-Z,两头字母包括在内
[a-d[m-p]] a到d或者m-p:[a-dm-p]
[a-z&&[def]]    d或e或f,交集
[a-z&&[^bc]] a到z,除了b和c:[ad-z]
[a-z&&[^n-p]] a到z,除了n-p: [a-mq-z]




预定义字符类
. 任何字符(与行结束符可能不匹配)
\d 数字[0-9]
\D 非数字[^0-9]
\s 空白字符:[\t\n\x0B\f\r]
\S 非空白字符[^\s]
\w 单词字符[a-zA-Z_0-9]
\W 非单词字符[^\w]


边界匹配器
^ 行的开头
$ 行的结尾
\b 单词边界
\B 非单词边界
\A 输入的开头
\G 上一个匹配的结尾
\Z 输入的结尾,仅用于最后的结束符(如果有的话)
\z 输入的结尾


数量词
X? X出现0次或1次(X代表内容)
X* X出现0次或多次
X+ X出现1次或多次
X{n} X出现恰好n次
X{n,} X至少出现n次
X{n,m} X出现至少n次,但是不超过m次


手机号"1[358][0-9]{9}"
"1[358]\\d{9}"


切割 str.split(" +"); //以一个或者多个空格作为分隔符
正则当中.要写成\\.


(X) X,作为捕获组
\n 任何匹配的捕获组
利用叠词分隔
str.split("(.)\\1+") str.split("(.){1,}")


在其他参数中调用前面的参数:
str.replace("(.)\\1+", "$1");


找出3个字母的单词
"\b[a-z]{3}\b"


邮箱校验
"\\w+@\\w+(\\.\\w+)+"
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值