<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
</body>
<script type="text/javascript">
/*
正则表达式中特殊字符的含义:
x|y :匹配 x 或 y。
\w :匹配任意来自基本拉丁字母表中的字母数字字符,还包括下划线。等价于 [A-Za-z0-9_]。
例如,/\w/ 匹配 "apple" 中的 'a',"$5.28" 中的 '5' 和 "3D" 中的 '3'。
\W :匹配任意不是基本拉丁字母表中单词(字母数字下划线)字符的字符。等价于 [^A-Za-z0-9_]。
例如,/\W/ 或 /[^A-Za-z0-9_]/ 匹配 "50%" 中的 '%'。
\d :匹配任意阿拉伯数字。等价于[0-9]。
例如,/\d/ 或 /[0-9]/ 匹配 "xyz1" 中的 '1'。
\D :匹配任意一个不是阿拉伯数字的字符。等价于[^0-9]。
例如,/\D/ 或 /[^0-9]/ 匹配 "xyz1" 中的 'x'。
*/
var re = /xyz|a|[0-2]/g;
var text = 'axyzbxa1221';
console.log(text.match(re));//["a", "xyz", "a", "1", "2", "2", "1"]
var re2 = /\w/;
var text2 = 'apple';
console.log(text2.match(re2));//["a"]
var re3 = /\W/;
var text3 = 'apple宇';
console.log(text3.match(re3));//["宇"]
var re4 = /\d/;
var text4 = 'xyz1';
console.log(text4.match(re4));
["1"]
var re5 = /\D/;
var text5 = 'xyz1';
console.log(text5.match(re5));
["x"]
</script>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
</body>
<script type="text/javascript">
/*
正则表达式中特殊字符的含义:
\s :匹配一个空白符,包括空格、制表符、换页符、换行符和其他 Unicode 空格。
等价于 [ \f\n\r\t\v]。
\S :匹配一个非空白符。等价于 [^ \f\n\r\t\v]。
\b :匹配一个零宽单词边界,如一个字母与一个空格之间。 (不要和 [\b] 混淆)。
\B :匹配一个零宽非单词边界,如两个字母之间或两个空格之间。
*/
var re = /\s\w*/;
var text = 'xyz lm';
console.log(text.match(re));//["lm"]
var re2 = /\S\w*/;
var text2 = 'xyz lm';
console.log(text2.match(re2));//["xyz"]
var re3 = /\bxyz/g;
var text3 = 'axyz b xyz ';
console.log(text3.match(re3));//["xyz"]
var re4 = /\bxyz/g;
var text4 = 'xyz b xyz ';
console.log(text4.match(re4));//["xyz","xyz"]
var re5 = /\bxyz\b/g;
var text5 = 'axyz b xyz ';
console.log(text5.match(re5));//["xyz"]
var re6 = /\Bxyz/g;
var text6 = 'axyz b cxyz';
console.log(text6.match(re6));//["xyz","xyz"]
var re7 = /\Bxyz\B/g;
var text7 = 'axyz b cxyzd';
console.log(text7.match(re7));//["xyz"]
</script>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
</body>
<script type="text/javascript">
/*
正则表达式中特殊字符的含义:
. :(点号,小数点) 匹配任意单个字符,但是行结束符除外:\n \r 。
*/
var re = /.y/;
var text = 'yzxyzlm yz';
console.log(text.match(re));//["xy"]
</script>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
</body>
<script type="text/javascript">
/*
正则表达式中特殊字符的含义:
x* :匹配前面的模式 x 0 或多次。
*/
var re = /x*/g;
var text = 'xyz xlm';
console.log(text.match(re));// ["x", "", "", "", "x", "", "", ""]
var re2 = /xy*/g;
var text2 = 'xyz xlm';
console.log(text2.match(re2));//["xy", "x"]
var re3 = /xy*/g;
var text3 = 'yz ylm';
console.log(text3.match(re3));//null
</script>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
</body>
<script type="text/javascript">
/*
正则表达式中特殊字符的含义:
x+ :匹配前面的模式 x 1 或多次。
*/
var re = /x+/g;
var text = 'xyz xlm';
console.log(text.match(re));// ["x", "x"]
var re2 = /xy+/g;
var text2 = 'xyz xlm';
console.log(text2.match(re2));//["xy"]
var re3 = /xy+/g;
var text3 = 'yz ylm';
console.log(text3.match(re3));//null
</script>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
</body>
<script type="text/javascript">
/*
正则表达式中特殊字符的含义:
x? :匹配前面的模式 x 0 或 1 次。
x{n} :n 是一个正整数。前面的模式 x 连续出现 n 次时匹配。
x{n,m} :n 和 m 为正整数。前面的模式 x 连续出现至少 n 次,至多 m 次时匹配。
x{n,} :n 是一个正整数。前面的模式 x 连续出现至少 n 次时匹配。
*/
var re = /x?/g;
var text = 'xyzxx';
console.log(text.match(re));// ["x", "", "", "x", "x", ""]
var re2 = /x{2}/g;
var text2 = 'xyz xxxx xl xx';
console.log(text2.match(re2));//["xx", "xx", "xx"]
var re3 = /x{1,3}/g;
var text3 = 'xyz xxylmxxxlxxxxx';
console.log(text3.match(re3));//["x", "xx", "xxx", "xxx", "xx"]
var re4 = /x{2,}/g;
var text4 = 'xyz xxylmxxxlxxxxx';
console.log(text4.match(re4));//["xx", "xxx", "xxxxx"]
</script>
</html>