一、元字符
// 元字符
// 1、 \d 至少有一个数字
var reg = /\d/
var reg_1 = new RegExp(/\d/)
console.log(typeof reg);
console.log(typeof reg_1);
console.log(reg instanceof Object);
console.log(reg_1.constructor);
console.log(reg.constructor);
var inp = document.getElementById('inp')
inp.oninput = function () {
// console.log(reg.test(inp.value));
if (reg.test(inp.value)) {
console.log('成功了');
}
}
// 2、\D 至少任意一个非数字的字符
var str = '1232131'
var str1 = 'aaaaaa1'
var str2 = 'aaaaaaaa'
var reg = /\D/
console.log(reg.test(str));
console.log(reg.test(str1));
console.log(reg.test(str2));
// 3、\w 至少一个字母或数字或下划线
var str = '啊哈哈哈'
var str1 = '123812'
var str2 = '1哈哈'
var str3 = '_哈哈'
var reg = new RegExp(/\w/)
console.log(reg.test(str));
console.log(reg.test(str1));
console.log(reg.test(str2));
console.log(reg.test(str3));
// 4、\W 至少有一个不是字母,数字,下划线
var str = '123123'
var str1 = '12312a'
var str2 = '12312a_¥'
var str3 = '12312a_ashd哈哈'
var reg = /\W/
console.log(reg.test(str));
console.log(reg.test(str1));
console.log(reg.test(str2));
console.log(reg.test(str3));
// 5、\s 至少任意的空白符
var str = 'as dasda'
var reg = /\s/
console.log(reg.test(str));
// 6、\S 至少一个不是空白符的字符
var str = ' '
var reg = /\S/
console.log(reg.test(str));
// 7、. 至少有一个非换行符
var str = '123\n\n1231'
console.log(str);
var reg = /./
console.log(reg.test(str));
// 8、^ 匹配行首的文本(以谁开始) ^\d
var str = '1asdas123'
var reg = /^\d/
console.log(reg.test(str));
// 9、$ 匹配行尾的文本(以谁结束)
var str = '1asdas123asdas'
var reg = /\d$/
console.log(reg.test(str));
二、 // 限定符
代码如下(示例):
// 限定符
// 1、* 重复零次或更多次\d* /^ab*$/:表示一个字符串有一个a后面跟着零个或若干个b。("a", "ab", "abbb",……);
var str = 'aaabbb'
var reg = /^a*b*$/
console.log(reg.test(str));
// 2、+ 重复一次或更多次\d+ / ab+/:表示一个字符串有一个a后面跟着至少一个b或者更多;
var str = 'abbbbbabb'
var reg = /^ab+$/
console.log(reg.test(str));
// 3、? 重复零次或一次 /^ab?$/:表示一个字符串有一个a后面跟着零个或者一个b;
var str = 'a'
var reg = /^ab?$/
console.log(reg.test(str));
// 4、{n} 至少重复n次
var str = 'abbbbbb'
var reg = /ab{4}/
// 只能重复n次
var reg = /^ab{4}$/
console.log(reg.test(str));
//5、{n,} 重复n次或更多次
// 6、^{n,m}$ 重复n到m次
var str = 'abbb'
var reg = /^ab{4,7}$/
console.log(reg.test(str));
二、其他字符
// [] 字符串用中括号括起来,表示匹配其中的任一字符,相当于或的意思[0 - 9]
var str = 'E'
// var reg = /[0-9]/
var reg = /[A-Z]/
console.log(reg.test(str));
// \ 转义符: \的用法 \ 主要是用法是在正则表达式中的特殊符号转换为它本身的意思
var str = '.'
var reg = /\./
console.log(reg.test(str));
// | 或者,选择两者中的一个。注意|将左右两边分为两部分,而不管左右两边有多长多乱
var str = 'a'
var reg = /[A-Z]|[a-z]/
console.log(reg.test(str));