正则表达式简要示例


示例:/2[0-4]\d(?#200-249)|25[0-5](?#250-255)|1?\d\d?(?#0-199)/ 匹配0-255的整数
字符: (?#comment)
描述: comment是注释,不对正则表达示的处理产生任何影响

参数:\num 对捕获组的反向引用。num是一个正整数
示例: (\w)(\w)\2\1 匹配abba类型的数字,如2332 4334

常用元字符
. 匹配除换行符以外的任意字符
\w 匹配字母或数字或下划线
\s 匹配任意的空白符
\d 匹配数字
\b 匹配单词的开始或结束
^ 匹配字符串的开始
$ 匹配字符串的结束
常用限定符
* 重复零次或更多次
+ 重复一次或更多次
?重复零次或一次
{n} 重复n次
{n,} 重复n次或更多次
{n,m} 重复n到m次

常用反义词
\W 匹配任意不是字母,数字,下划线,汉字的字符
\S 匹配任意不是空白符的字符
\D 匹配任意非数字的字符
\B 匹配不是单词开头或结束的位置
[^x] 匹配除了x以外的任意字符
[^abc] 匹配除了abc这几个字母以外的任意字符

汉字:/^[\u4e00-\u9fa5]+$/
日期格式验证:/((?!0000)[0-9]{4}-((0[1-9]|1[0-2])-(0[1-9]|1[0-9]|2[0-8])|(0[13-9]|1[0-2])-(29|30)|(0[13578]|1[02])-31)|([0-9]{2}(0[48]|[2468][048]|[13579][26])|(0[48]|[2468][048]|[13579][26])00)-02-29)/
英文数字下滑线:/^\w+$/
正浮点数:/[1-9]\d*\.\d*|0\.\d*[1-9]\d*/
Email: /[\w!#$%&'*+/=?^_`{|}~-]+(?:\.[\w!#$%&'*+/=?^_`{|}~-]+)*@(?:[\w](?:[\w-]*[\w])?\.)+[\w](?:[\w-]*[\w])?/
正整数验证:/^[0-9]*$/
mac地址验证:/([A-Fa-f0-9]{2}-){5}[A-Fa-f0-9]{2}/
身份证号码验证:/^(\d{6})(\d{4})(\d{2})(\d{2})(\d{3})([0-9]|X)$/
ip地址验证:/((25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))\.){3}(25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))/

 

时间格式的正则表达式

24小时制时:分格式 0[0-9]:[0-5][0-9]|1[0-9]:[0-5][0-9]|2[0-3]:[0-5][0-9]

12小时制 时:分格式  0[0-9]:[0-5][0-9]|1[0-1]:[0-5][0-9]

1、yyyy-MM-dd格式时间校验:
(([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})-(((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01]))|
((0[469]|11)-(0[1-9]|[12][0-9]|30))|(02-(0[1-9]|[1][0-9]|2[0-8]))))|((([0-9]{2})(0[48]|[2468][048]|[13579][26])|
((0[48]|[2468][048]|[3579][26])00))-02-29)$

2、yyyy-MM-dd HH:mm:ss格式时间校验:
((([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})-(((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01]))|
((0[469]|11)-(0[1-9]|[12][0-9]|30))|(02-(0[1-9]|[1][0-9]|2[0-8]))))|((([0-9]{2})(0[48]|[2468][048]|[13579][26])|
((0[48]|[2468][048]|[3579][26])00))-02-29))
\s([0-1][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])$

3、yyyy/MM/dd格式时间校验:
(([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})\/(((0[13578]|1[02])\/(0[1-9]|[12][0-9]|3[01]))|
((0[469]|11)\/(0[1-9]|[12][0-9]|30))|(02\/(0[1-9]|[1][0-9]|2[0-8]))))|((([0-9]{2})(0[48]|[2468][048]|[13579][26])|
((0[48]|[2468][048]|[3579][26])00))\/02\/29)$

4、yyyy/MM/dd HH:mm:ss格式时间校验:
((([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})\/(((0[13578]|1[02])\/(0[1-9]|[12][0-9]|3[01]))|
((0[469]|11)\/(0[1-9]|[12][0-9]|30))|(02\/(0[1-9]|[1][0-9]|2[0-8]))))|((([0-9]{2})(0[48]|[2468][048]|[13579][26])|
((0[48]|[2468][048]|[3579][26])00))\/02\/29))
\s([0-1][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])$

5、yyyyMMdd格式时间校验:
(([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})(((0[13578]|1[02])(0[1-9]|[12][0-9]|3[01]))|
((0[469]|11)(0[1-9]|[12][0-9]|30))|(02(0[1-9]|[1][0-9]|2[0-8]))))|((([0-9]{2})(0[48]|[2468][048]|[13579][26])|
((0[48]|[2468][048]|[3579][26])00))0229)$

6、yyyyMMddHHmmss格式时间校验:
((([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})(((0[13578]|1[02])(0[1-9]|[12][0-9]|3[01]))|
((0[469]|11)(0[1-9]|[12][0-9]|30))|(02(0[1-9]|[1][0-9]|2[0-8]))))|((([0-9]{2})(0[48]|[2468][048]|[13579][26])|
((0[48]|[2468][048]|[3579][26])00))0229))
([0-1][0-9]|2[0-3])([0-5][0-9])([0-5][0-9])$

7、yyyyMMddHHmmssSSS格式时间校验:
((([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})(((0[13578]|1[02])(0[1-9]|[12][0-9]|3[01]))|
((0[469]|11)(0[1-9]|[12][0-9]|30))|(02(0[1-9]|[1][0-9]|2[0-8]))))|((([0-9]{2})(0[48]|[2468][048]|[13579][26])|
((0[48]|[2468][048]|[3579][26])00))0229))([0-1][0-9]|2[0-3])([0-5][0-9])([0-5][0-9])([0-9]{3})$
 

JAVA:

public class Test
{
    public static void main(String[] args) {
        Pattern pattern = Pattern.compile("^((25[0-5]|2[0-4]\\d|((1\\d{2})|([1-9]?\\d)))\\.){3}(25[0-5]|2[0-4]\\d|((1\\d{2})|([1-9]?\\d)))$");
        String test1 = "1996-11-15";
        String test2 = "127.0.0.1";
        Matcher matcher = pattern.matcher(test1);
        System.out.println(matcher.matches());
        matcher = pattern.matcher(test2);
        System.out.println(matcher.matches());
        
        //匹配可以有两位小数的金额
        pattern = Pattern.compile("^(([0-9]{1,8})|([0-9]{1,8}\\.[0-9]{0,2}))$");
        test1 = "55884.23";
        matcher = pattern.matcher(test1);
        System.out.println(matcher.matches());//返回true

       //匹配FWE或者YUR

        pattern = Pattern.compile("^((FWE)|(YUR))$");
        test1 = "FWE";
        matcher = pattern.matcher(test1);
        System.out.println(matcher.matches());//返回true


        
    }
}

 

下面这个就是js匹配正则表达式的方法,text 为待匹配内容,这个正则的意思就是限定输入的第二位是^ 倒数第二位是$ 

 var text=this.cons.consExprUser;
  // 下面这个正则表达式的意思就是限定输入的第二位为^,倒数第二位为$ 例:/^要输入的规则$/
    var re=/^.\^.*?\$.$/
    let result=re.test(text);
 下面是后台正则表达式的使用

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值