常用正则表达式 以及 基本语法

电话号码:^1[3|4|5|7|8][0-9]{9}$

身份证号(18位):(^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])((\d{4})|\d{3}[Xx])$)

必须包含字母数字的6-10位密码:^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,10}$

解析:

^ $ 分别表示匹配开始 结束位置

(?![0-9]+$) 预测该位置后面不全是数字

(?![a-zA-Z]+$) 预测该位置后面不全是字母

[0-9a-zA-Z]{6,10} 由6-10位数字或字母组成

必须包含数字字母下划线的6-10位密码:^((?=.*[0-9].*)(?=.*[A-Za-z].*)(?=.*_.*))[_0-9A-Za-z]{6,10}$


匹配中文:[\u4e00-\u9fa5]

匹配双字节字符:[^\x00-\xff]

去重的正则匹配式:

s = "aaaccccdffueee";

s.replaceAll("(.)\\1+", "$1");

(.)表示分组,组号从1开始,此组内容是 任意一个字符

\\1 第一个 \ 表示转义字符, \1表示引用第一组内容

$1 引用上个正则表达式的第一组的内容

基本语法:

\d:任意数字 \D:非数字[^0-9]

\w:字母数字下划线 \W:非字母数字下划线

\s:任意空白字符 \b:边界

^:开始位置(或者是非) $:结束位置

?:出现0或1此 *:出现0或多次

+:出现1或多次 {m}:出现m次

{m,}:至少出现m次 {m,n}:出现m次到n次

():用于分组 (x|y):x或y

[abc]:abc任意一个字符 [0-9]:任意一位数字


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值