正则表达式

##正则表达式

  • 创建对象

  • Pattern p = Pattern.compile(正则表达式)

  • Matcher m = p.matcher(要匹配的字符串)

  • s.matches(正则表达式) 当前字符串是否与正则表达式相匹配

  • s.replaceAll(正则表达式, 子串) 匹配正则表达式的子串,替换为新的子串

  • s.split(正则表达式) 用正则表达式匹配的子串,拆分当前字符串

    • ^ 正则中非得意思例:/[^\d] 非数字类型 和\D 意思是一样的

    • \d 数字类型[0~9]

    • \D 数字以外的所有字符

    • \w 单词字符[a-zA-Z_0-9] [^\w] 相当于\W;

    • \W 排除单词字符

    • \s 空白字符

    • \S 排除空白字符

    • . 所有字符

    • $ 匹配输入字符串的结束位置

      • 匹配前面的字表达式一次或多次(大于1次)类似于{1,}最少1个,例:"zo+"能匹配"zo"以及"zoo"但是不能匹配z
    • ? 匹配前面的子表达式零次或一次,例:“do(es)?”可以匹配“do”或“does” 等价于{0,1} 0个或一个

      • 匹配前面的子表达式任意次。例如,zo*能匹配“z”,“zo”以及“zoo”。*等价于{0,}
    • []{4 } 必须是4个

    • []{3,5} 三到多个,

    • []{3,} 最少3个

    • \ 转译运算符 输出字符串中不能单独使用


 输入数字<input onkeyup="this.value=this.value.replace(/\D/g,'')" onafterpaste="this.value=this.value.replace(/\D/g,'')">

 <input name=txt1 onkeyup="if(/[^\d.]/.test(this.value)){alert('只能输入数字');this.value='';}">
 
 <input id="mpsRecordChildList{{idx}}_refSubId" value=0 onKeyUp="if(this.value.length==7){this.value=0};this.value=this.value.replace(/\D/g,'');"

输入数字

~~~
字母 数字组合
^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,10}$

手机号
^1[3|4|5|7|8|6|9][0-9]\d{4,8}$

身份证
/(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/

车牌号
^([京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[a-zA-Z](([DF]((?![IO])[a-zA-Z0-9](?![IO]))[0-9]{4})|([0-9]{5}[DF]))|[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-Z0-9]{4}[A-Z0-9挂学警港澳]{1})$

字母数字组合,长度6~10
/^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,10}$/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值