RegExp

一 概念 

#### 1、正则对象

```js
// 构造函数
var re = new RegExp('^\\w', 'igm');
// 字面量
var re = /^\w/igm;
```

#### 2、修饰符

```js
i:不区分大小写
g:全文匹配
m:多行匹配
```

#### 3、正则方法

```js
test():匹配目标字符串,结果为true|false
exec():匹配目标字符串,结果为第一条结果所有信息的数组
```

#### 4、字符串方法

```js
match(re):匹配指定正则,结果为数组(可全文匹配)
search(re):匹配指定正则,结果为匹配的索引,反之-1
replace(re, newStr):匹配指定正则,替换匹配的结果(可全文匹配)
split(re, n):按正则进行拆分,n的值可以决定结果的数组长度(可选参数)
```

二 代码示范

<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<title>RegExp</title>
</head>
<body>
RegExp
</body>
<script type="text/javascript">
// 构造函数
var re = new RegExp('\\w');
var res = re.test("abc");
console.log(res);

// 字面量
re = /\w/;
res = re.test("abc");
console.log(res);

res = re.exec("abc");
console.log(res);


// 字符串的match方法
str = "ABCABC";
// re = /a/; // null => test
// re = /a/i; // 非多文匹配类似于exec
re = /a/ig; // 所有满足结构的结果数组
var arr = str.match(re);
console.log(arr);

str = "abc123x9y8z7\n123";
re = /^\d/m;
arr = str.match(re);
console.log(arr);

// 修饰符
// i: 不区分大小写
// g: 全文匹配(多匹配)
// m: 多行匹配

</script>
</html>

posted @ 2018-10-17 17:51  不沉之月  阅读(188)  评论(0编辑  收藏  举报