本文主要介绍正则表达式的基本运用。通过以下实例进行说明。
(1) /我/g
匹配所有的“我”
(2) /p/ig
匹配所有的p和P
(3)/\s/
匹配第一个空格
(4)/\d/
匹配第一个数字
(5)/[e-g]/gi
匹配e到g之间的所有字符,包含大小写
(6) /[1-6]/g
匹配1到6之间的所有数字
(7)/(a|1)/g
匹配所有的a和1
(8)/\b/g
匹配数字、字母或数字字母组合的边界,相当于划分出字符串中的数字和字母
(9)/e+/g
匹配所有的e,连续的e算一个
(10)查询位置信息
// 检测字符中是否包含“韩”,返回true或false
console.log(/韩/.test(a));
// 检测字符中是否包含“汉”,返回位置信息
console.log(/汉/.exec(a));
// 检测字符中是否包含“韩”,返回位置信息
console.log(/韩/.exec(a));
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<!-- 匹配须关注两个问题:内容及匹配模式-->
</head>
<body>
<script>
var a = '下姑t笔赏极,丑 仄了把全决之前t子12感锐 right 土次a里葬p份创自,都才p命,韦活乏t夫为谭肯自皇动我没报,只、雷子你没同,且韩自要2121dd就的杀竟卑留33是已,专生舟t什者失b生沉友不作,上将都ee皇的45f商拢虑p愿风t有法他李玉天马不,的能亓司我单eeeEeeeEeeee下国45元说负,之e间太了国人j可兄找遗车,官事。';
// 用☹替换第一个“我”
console.log(a.replace('我', '☹'));
// 用☹替换所有的“我”
console.log(a.replace(/我/g, '☹'));
// 用☹替换所有的p和P
console.log(a.replace(/p/ig, '☹'));
// 用☹替换第一个空格
console.log(a.replace(/\s/, '☹'));
// 用☹替换第一个数字
console.log(a.replace(/\d/, '☹'));
// 用☹替换e到g之间的所有字符,包含大小写
console.log(a.replace(/[e-g]/gi, '☹'));
// 用☹替换1到6之间的所有数字
console.log(a.replace(/[1-6]/g, '☹'));
// 用☹替换所有的a和1
console.log(a.replace(/(a|1)/g, '☹'));
// 用▉替换数字、字母或数字字母组合的边界,相当于划分出字符串中的数字和字母
console.log(a.replace(/\b/g, '▉'));
// 用☹替换所有的e,连续的e算一个进行替换
console.log(a.replace(/e+/g, '☹'));
// 检测字符中是否包含“韩”,返回true或false
console.log(/韩/.test(a));
// 检测字符中是否包含“汉”,返回位置信息
console.log(/汉/.exec(a));
// 检测字符中是否包含“韩”,返回位置信息
console.log(/韩/.exec(a));
</script>
</body>
</html>