记录一波非主流且很有用的正则表达式

如题,正则表达式在工作中很常用,有的知识没掌握好,写起来有点吃力,先记录一波,改(ruguo)天(xiangqilaile)再恶补一下这方面的基础…

1、常用于做密码的校验:6-20位 必须包含英文大写、小写、数字的组合,关键词:零宽断言

^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[^]{6,20}$

升级版:6-20位 必须包含英文大写、小写、数字,且只能是英文大写、小写、数字的组合

^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[A-Za-z0-9]{6,20}$

2、给出一串字符串,每隔20个字符进行换行,关键词:$&

var str = "asdfdkhalkjshdkjashdkadkjahsdkuqwueyqwey19236gsadgaskd问该建安公司决定哈根但ueyqwey19236gsadgaskd问该建安公司决定哈根但ueyqwey19236gsadgaskd问该建安公司决定哈根但ueyqwey19236gsadgaskd问该建安公司决定哈根ueyqwey19236gsadgaskd问该建安公司决定哈根但ueyqwey19236gsadgaskd问该建安公司决定哈根但ueyqwey19236gsadgaskd问该建安公司决定哈根但ueyqwey19236gsadgaskd问该建安公司决定哈根但ueyqwey19236gsadgaskd问该建安公司决定哈根ueyqwey19236gsadgaskd问该建安公司决定哈根但ueyqwey19236gsadgaskd问该建安公司决定哈根但ueyqwey19236gsadgaskd问该建安公司决定哈根但是";
str=str.replace(/[^\x00-\xff]/g,"$&\x01").replace(/.{20}\x01?/g,"$&\n").replace(/\x01/g,""); 

如果不需要判断中英文,修改一下

str=str.replace(/.{20}?/g,"$&\n");

3、匹配 a 开始和 b 结束

a.*?b

4、遇到了再补充…

发表评论

最新发布