1. 正则表达式的创建方式:
01. 正则表达式的创建方式
1. 使用new关键字;
2. 字面量的方式创建一个正则表达式;
3. 带字符模式
var box=new RegExp("box");// 1. 使用new关键字;
var box = /box/;// 2. 字面量的方式创建一个正则表达式;
var box = RegExp("box","gi");// 3. 带字符模式
2. 正则表达式匹配字符串:
02. 正则表达式匹配字符串:
1. test() 返回true,则符合,返回false,则不符合
2. exec() 返回数组则符合,返回null则不符合
3.字符串提供的正则表达式方法(函数)
03.字符串提供的正则表达式方法(函数)
1. match(): 查找并返回数组
2. repalce(): 查找并替换,返回新的数组
3. search(): 查找,并且返回找到的字符串的下标,找不到返回-1
4. split(): 拆分字符串,如果可以拆分,返回拆分数组,否则返回原数组
4. 字符串提供的正则表达式方法(函数)
04. 字符串提供的正则表达式方法(函数)
. 点,元符号,代表任意单个字符!(出去换行)
* 表示*前面的字符可以出现分宜多次!(0次或者任意多次)
[] 表示范围!如:[a-z]表示小写字母a-z
[] 可以包含多个范围! 如下范围:a-z, A-Z,0-9,_
^ 非,不允许出现!
+ 表示前面的字符,至少出现一次!
\w 表示字母数字,下画线!如:[a-z A-Z0-9_]
\d 表示数字!相当于[0-9]
\D 表示非数字!等价于[^0-9]
{3} 前面的字符出现3次
{3,} 前面的字符出现3次以上
{3,6} 前面的字符出现3到6次
/^ 表示从开始匹配字符
$/ 表示从结尾开始匹配字符
/^$/ 表示完全匹配
\s 表示空格
\b 边界检测
| 或,表示只要满足一个条件就可以了
() 会把字符串当成一个整体
\ 转义字符!
8(.*) 8之间的任意字符串
5. 关于捕获性:
var str = "123abc";
// 捕获性分组
var pattern = /(\d+)([a-z]+)/;
// ?: 非捕获性分组,不会单独捕获
var pattern = /(\d+)(?:[a-z]+)/;
/**
* m: 换行模式
* g:全局模式!
* i:忽略大小写
*/
var pattern = /^\d+/mgi;