update:正则表达式
This commit is contained in:
		
							parent
							
								
									08969229e3
								
							
						
					
					
						commit
						8a12bfb6c2
					
				@ -9,7 +9,7 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
## 创建正则表达式的对象
 | 
					## 创建正则表达式的对象
 | 
				
			||||||
 | 
					
 | 
				
			||||||
### 方式一:使用构造函数创建
 | 
					### 方式一:使用构造函数创建正则表达式的对象
 | 
				
			||||||
 | 
					
 | 
				
			||||||
语法:
 | 
					语法:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -57,9 +57,9 @@
 | 
				
			|||||||
	myReg.test(str); // 判断字符串 str 是否符合 指定的 myReg 这个正则表达式的规则
 | 
						myReg.test(str); // 判断字符串 str 是否符合 指定的 myReg 这个正则表达式的规则
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
解释:使用`test()`这个方法可以用来检查一个字符串是否符合正则表达式的规则,如果符合则返回true,否则返回false。
 | 
					解释:使用`test()`这个方法可以用来检查一个字符串是否符合正则表达式的规则,**如果符合则返回true,否则返回false**。
 | 
				
			||||||
 | 
					
 | 
				
			||||||
**2、传两个参数时**:匹配模式
 | 
					**2、传两个参数时**:匹配模式 【重要】
 | 
				
			||||||
 | 
					
 | 
				
			||||||
构造函数 RegExp 中,也可以传两个参数。我们可以传递一个**匹配模式**作为第二个参数。这个参数可以是:
 | 
					构造函数 RegExp 中,也可以传两个参数。我们可以传递一个**匹配模式**作为第二个参数。这个参数可以是:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -76,7 +76,7 @@
 | 
				
			|||||||
    console.log(reg.test(str)); // 打印结果:true
 | 
					    console.log(reg.test(str)); // 打印结果:true
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
### 方式二:使用字面量
 | 
					### 方式二:使用字面量创建正则表达式
 | 
				
			||||||
 | 
					
 | 
				
			||||||
我们可以使用字面量来创建正则表达式。
 | 
					我们可以使用字面量来创建正则表达式。
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -88,15 +88,17 @@
 | 
				
			|||||||
	var 变量 = /正则表达式/匹配模式;  // 注意,这个语法里没有引号
 | 
						var 变量 = /正则表达式/匹配模式;  // 注意,这个语法里没有引号
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
语法举例:
 | 
					代码举例:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
```javascript
 | 
					```javascript
 | 
				
			||||||
	var reg = new RegExp("a", "i"); // 方式一
 | 
						var reg = /A/i; // 定义正则表达式的规则:检查一个字符串中是否含有 a。忽略大小写。
 | 
				
			||||||
 | 
						var str = "qiangu";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	var reg = /a/i; // 方式二
 | 
						console.log(typeof reg);  // 打印结果:object
 | 
				
			||||||
 | 
						console.log(reg.test(str)); // 打印结果:true
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
上面这两行代码的作用是等价的。
 | 
					### 两种方式的对比
 | 
				
			||||||
 | 
					
 | 
				
			||||||
**以上两种方式的对比**:
 | 
					**以上两种方式的对比**:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -107,13 +109,13 @@
 | 
				
			|||||||
代码举例:
 | 
					代码举例:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
```javascript
 | 
					```javascript
 | 
				
			||||||
	var reg = /A/i; // 定义正则表达式的规则
 | 
						var reg = new RegExp("a", "i"); // 方式一
 | 
				
			||||||
	var str = "qiangu";
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
	console.log(typeof reg);  // 打印结果:object
 | 
						var reg = /a/i; // 方式二
 | 
				
			||||||
	console.log(reg.test(str)); // 打印结果:true
 | 
					 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					上面这两行代码的作用是等价的。
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## 正则表达式的常见语法
 | 
					## 正则表达式的常见语法
 | 
				
			||||||
 | 
					
 | 
				
			||||||
### 检查一个字符串中是否包含 a或b
 | 
					### 检查一个字符串中是否包含 a或b
 | 
				
			||||||
@ -178,26 +180,31 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
 String对象的如下方法,是支持正则表达式的:
 | 
					 String对象的如下方法,是支持正则表达式的:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 | 
				
			||||||
| 方法 | 描述 | 备注 |
 | 
					| 方法 | 描述 | 备注 |
 | 
				
			||||||
|:-------------|:-------------|:-------------|
 | 
					|:-------------|:-------------|:-------------|
 | 
				
			||||||
| split() | 将字符串拆分成数组  |   |
 | 
					| split() | 将字符串拆分成数组  |   |
 | 
				
			||||||
| search() | 搜索字符串中是否含有指定内容 |  |
 | 
					| search() | 搜索字符串中是否含有指定内容,返回索引index |  |
 | 
				
			||||||
|  match() | 根据正则表达式,从一个字符串中将符合条件的内容提取出来 |  |
 | 
					| match() | 根据正则表达式,从一个字符串中将符合条件的内容提取出来 |  |
 | 
				
			||||||
|   |  |  |
 | 
					| replace()  | 将字符串中的指定内容,替换为新的内容并返回 |  |
 | 
				
			||||||
 | 
					
 | 
				
			||||||
下面来分别举例。
 | 
					下面来分别介绍和举例。
 | 
				
			||||||
 | 
					
 | 
				
			||||||
### split()
 | 
					### split()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
**举例**:根据任意字母,将字符串拆分成数组。
 | 
					`split()`:将一个字符串拆分成一个数组。
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					备注:关于`split()`更详细的用法,可以看之前的关于"内置对象:String"的文章。
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					`search()`方法可以接受一个正则表达式作为参数。
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					**正则相关的举例**:根据任意字母,将字符串拆分成数组。
 | 
				
			||||||
 | 
					
 | 
				
			||||||
代码实现:(通过正则)
 | 
					代码实现:(通过正则)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
```javascript
 | 
					```javascript
 | 
				
			||||||
	var str = "1a2b3c4d5e6f7g";
 | 
						var str = "1a2b3c4d5e6f7g";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	var result = str.split(/[A-z]/);
 | 
						var result = str.split(/[A-z]/); // 参数是一个正则表达式:表示所有字符
 | 
				
			||||||
	console.log(result);
 | 
						console.log(result);
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -251,7 +258,7 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
match()这个方法还是很实用的,可以在一个很长的字符串中,提取出**有规则**的内容。这不就是爬虫的时候经常会遇到的场景么?
 | 
					match()这个方法还是很实用的,可以在一个很长的字符串中,提取出**有规则**的内容。这不就是爬虫的时候经常会遇到的场景么?
 | 
				
			||||||
 | 
					
 | 
				
			||||||
### replace
 | 
					### replace()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
`replace()`:将字符串中的指定内容,替换为新的内容并返回。不会修改原字符串。
 | 
					`replace()`:将字符串中的指定内容,替换为新的内容并返回。不会修改原字符串。
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -268,7 +275,6 @@ match()这个方法还是很实用的,可以在一个很长的字符串中,
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
- 新的内容:默认只会替换第一个。如果需要替换全部符合条件的内容,可以设置正则表达式为**全局匹配**模式。
 | 
					- 新的内容:默认只会替换第一个。如果需要替换全部符合条件的内容,可以设置正则表达式为**全局匹配**模式。
 | 
				
			||||||
 | 
					
 | 
				
			||||||
代码举例:
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
代码举例:
 | 
					代码举例:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user