记录下工作中用到的或者其他常用的正则
1
2
// => reg(正则表达式), value(需要检测的值)
/reg/.test(value)
1
2
// 获取字符串中的数字存入数组
/\d+/g
1
2
// 整个字符串是存数字
^\d+$
1
2
// 获取字符串中的数字部分
const num = value.replace(/[^0-9]/ig, '');
1
2
// 获取字符串中的字母部分
const word = value.replace(/[^a-z]+/ig, '');
1
2
// 匹配介于${ 和 } 直接的字符串, AAA是开始位置 BBB是结束位置 匹配介于AAA和BBB之间字符串
(?<=\${)(.*?)(?=}) => (?<=AAA)(.*?)(?=BBB)
1
2
// 删除字符串中的所有特殊字符
replace(/[^\w\s]/gi, '')
1
2
// 删除字符串中的所有空格
replace(/\s/g,'')
1
2
// 匹配任意字符串开头数字结尾的字符串
/^\w+\d+$/
1
2
3
// 每个括号内容为一个捕获组, 匹配目标字符串并替换成 $1%$3 这样的形式
// 即这两个捕获组的匹配到的内容拼接起来的字符串(^[a-zA-Z]+\/) + % + (\/PROVIDERS\/.*)
"str".replace(/(^[a-zA-Z]+\/)(.*)(\/PROVIDERS\/.*)+/gm, "$1%$3")
1
2
3
// 匹配以元音字母开头和结尾的字符串
// \1 matches the same text as most recently matched by the 1st capturing group: ^([aeiou])
/^([aeiou]).+\1$/g