regexp对象与修饰符
在js中使用正则表达式 直接在表达式的前后加//即可
修饰符 :
g: Global 全文匹配
I : ignor case 忽略大小写
m: multiple lines 多行搜索
构造函数 var reg = new RegExp(''\\bis\\b,'gi')
\b 单词边界 \bis\b 匹配this
/g 全局搜索,不加g,搜到第一个匹配停止
i, ignore case 忽略大小写
m multiple lines 多行搜索
创建正则表达式两种方式:1.字面量:var reg = /\bis\b/ 2.构造函数:var reg = new RegExp('\\bis\\b' , 'g')
修饰符
1,g : global 全文搜索
2,i : ignore case 忽略大小写
3,m : multiple lines 多行搜索
1,字面量 2,构造函数
字面量: 两个斜杠/之间表示js正则表达式
\b 表示单词边界 ,g表示全文匹配
构造函数:new RegExp()
需要对内容进行转义处理
修饰符 m 多行搜索
修饰符 g 全文检索
修饰符 i :忽略大小写 默认大小写敏感
使用构造函数的方式
g 代表全文搜索匹配
replace 正在表达式的替换功能
正则的构造函数使用
new RegExp('\\bis\\b', 'g'); 注意里面第一个不是斜线 是反斜线 我的理解是 构造函数里面 正则不需要斜线包裹.
replace的使用
字面量,单个替换,全局替换
字面量
var reg =/\bis\b/g 匹配is \b是单词边界 g是全局匹配
构造函数 var reg= new Regexp('\\bis\\b','g')
修饰符
g global 全局搜索
i ignone case 忽略大小写,默认大小写敏感
m multiple lines 多行搜索
在JS中,正则表达式被包在两个'/'之间
可以直接写两个/,中间写出pattern来构造正则表达式对象
也可以使用构造函数new RegExp(字符串|已有正则表达式对象,模式)来创建
字符串对象的replace接收两个参数(str|RegExp, 匹配元素)
在正则表达式最后写上g(/???/g)为全局匹配,否则只匹配模式串中第一个合适的元素
i为忽略大小写
m多行搜索
记住string.replace(reg, str)可以匹配正则表达式
一.实例化
1.字面量var reg=\/bis/b\g;
2.构造函数var reg=new RegExp('\\bis\\b',g);
二.修饰符
1. g :global
2. i :ignore case
3. m :多行,multiple lines
1111111111111
实例化RegExp对象
1、字面量
var reg='/\bis\b/'
解释:\b代表单词边界,is是一个完整的单词,文本替换replace
2、构造函数
var reg=new RegExp('\\bis\\b')
解释:\\写了两次,因为在javascript中\代表的是特殊字符,如果要使用就要转义,
修饰符
1、g: 全文搜索,如果不添加,搜索到第一个匹配停止
2、i:忽略大小写,默认是区分大小写
3、m: 多行搜索
修饰符:g/i/m
regexp构造函数
regexp字面量
regexp对象
正则表达式 字面量 需要在/ / 两个斜杠当中 , / /g 则可以查阅全文
也可以使用构造函数 new ( '\\bis\\b' 需要转译 所以要多一个反斜杠)
g:global 全文搜索 不添加只搜索第一个匹配即停止
i : ignore case 忽略大小写 默认是大小写敏感
m: multiple lines 多行搜索
RegExp对象
JavaScript通过内置对象RegExp支持正则表达式
有以下两种方法实例化RegExp对象:
方法 例子语法
1.字面量 var reg = /\bis\b /g (定义变量)
2.构造函数 var reg=new RegExp( '\\bis\\b' , 'g' ) (用new操作符来调用构造函数,构造函数接收两个参数,第一个是字符串,里边是正则表达式的文本;(有两个\的原因:\是特殊字符,如果要使用的话需要转译)第二个也是字符串)
修饰符
g global全文搜索,不添加的话,搜索到第一个匹配的对象后就会停止搜索
i ignore case忽略大小写,没有i标志是默认大小写敏感的
m multiple line 多行搜索
字面量:
var reg = /\bis\b/;
'He is a boy.'.replace(reg, 'IS')//He IS a boy
构造函数:
var reg = new RegExp('\\bis\\b', 'gi')
'He is a boy.Is he?'.replace(reg, 'IS')//He IS a boy.IS he?
JavaScript通过内置对象RegExp支持正则表达式
g:global 全文搜索,不添加时会搜索到第一个匹配停止
i: ignore case 忽略大小写,默认大小写敏感
m: multiple lines多行搜索