每天记录一个知识点(常用正则表达式)

不废话直接上代码(打卡:2020-12-29 )

去除前后空格

str.replace(/(^\s*)|(\s*$)/g, "")

手机号

严谨
/^[1](([3][0-9])|([4][5-9])|([5][0-3,5-9])|([6][5,6])|([7][0-8])|([8][0-9])|([9][1,8,9]))[0-9]{8}$/
简单
/^[1]([3-9])[0-9]{9}$/

密码验证

必须包含数字字母符号的正则验证
/^(?:(?=.*[0-9].*)(?=.*[A-Za-z].*)(?=.*[,\.#%'\+\*\-:;^_`].*))[,\.#%'\+\*\-:;^_`0-9A-Za-z]{8,10}$/

--不为纯数字或字母的正在表达式 用于密码验证
/^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{8,16}$/

--密码为8~20位数字,英文,符号至少两种组合的字符
/^(?![0-9]+$)(?![a-z]+$)(?![A-Z]+$)(?![,\.#%'\+\*\-:;^_`]+$)[,\.#%'\+\*\-:;^_`0-9A-Za-z]{8,20}$/

使用
const reg = /^(?:(?=.*[0-9].*)$/
reg.test(value)

匹配16进制颜色值

要求匹配:
#ffbbad
#Fc01DF
#FFF
#ffE

var regex = /#([0-9a-fA-F]{6}|[0-9a-fA-F]{3})/g;
var string = "#ffbbad #Fc01DF #FFF #ffE";
console.log( string.match(regex) ); 
// => ["#ffbbad", "#Fc01DF", "#FFF", "#ffE"]

匹配时间

要求匹配:
23:59
02:07

var regex = /^([01][0-9]|[2][0-3]):[0-5][0-9]$/;
console.log( regex.test("23:59") ); 
console.log( regex.test("02:07") ); 

匹配日期

要求匹配:
2017-06-10

var regex = /^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])$/;
console.log( regex.test("2017-06-10") ); 

window操作系统文件路径

要求匹配:
F:\study\javascript\regex\regular expression.pdf
F:\study\javascript\regex\
F:\study\javascript
F:\

var regex = /^[a-zA-Z]:\\([^\\:*<>|"?\r\n/]+\\)*([^\\:*<>|"?\r\n/]+)?$/;
console.log( regex.test("F:\\study\\javascript\\regex\\regular expression.pdf") ); 
console.log( regex.test("F:\\study\\javascript\\regex\\") ); 
console.log( regex.test("F:\\study\\javascript") ); 
console.log( regex.test("F:\\") ); 

匹配id

要求从
<div id="container" class="main"></div>
提取出id="container"。

var regex = /id=".*"/
var string = '<div id="container" class="main"></div>';
console.log(string.match(regex)[0]); 
// => id="container" class="main"

笔记:
无,哈哈哈

猜你喜欢

转载自blog.csdn.net/weixin_44314258/article/details/111917086
今日推荐