/^ $/表示精确匹配, / /只要存在一个匹配的就为true;
/^abc/ 只要以"abc"开头的就为true;
/abc$/ 只要以"abc"结尾的就为true;
* {0,} 0个或多个
+ {1,} 至少1个
? {0,1} 最多1个
| 表示或者(没有&)
demo.html:
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
</head>
<body>
<script>
console.log("-------------预定义类-------------"); // /^ $/表示精确匹配, / /只要存在一个匹配的就为true;
console.log(/./.test("\n\r")); //false 换行、回车、空字符串 是false。其他任意字符串都是true
console.log(/\d/.test("123")); //true 存在数字就为true \d:数字 \D:非数字
console.log(/\d/.test("adsfadsgdfgdfg")); //false
console.log(/\s/.test(" ")); //true 存在空白字符就为true \s:空白字符 \S:非空白字符
console.log(/\s/.test("asdfadsf")); //false
console.log(/\w/.test("$1")); //true \w:单词字符(字母、数字、下划线) [a-zA-Z_0-9] \w:非单词字符
console.log(/\w/.test("_")); //true
console.log("-------------简单类-------------");
console.log(/chaoge/.test("chaogenihao")); //true 包含完整"chaoge"的字符串。
console.log(/[chaoge]/.test("a;ljr jglkrj grjgr")); //true 只要包含其中一个就可以。
console.log("-------------负向类-------------");
console.log(/[^abc]/.test("iii")); //true 存在非abc的内容(不是纯abc的就为true) ^在[]内才为非,/^表示开始
console.log(/[^abc]/.test("aiiii")); //true
console.log(/[^abc]/.test("abc")); //false
console.log(/[^abc]/.test("b")); //false
console.log(/[^abc]/.test("bcdef")); //true
console.log(/[^abc]/.test("abcdef")); //true
console.log("-------------范围类-------------");
console.log(/[a-c]/.test("dghhj")); //false
console.log(/[a-c]/.test("b")); //true 存在abc中的一个就为true
console.log("-------------组合类-------------");
console.log(/[a-c1-6]/.test("dghhj")); //false
console.log(/[a-c1-6]/.test("b")); //true
console.log(/[a-c1-6]/.test(8)); //false
console.log(/[a-c1-6]/.test(3)); //true
</script>
</body>
</html>