JS正则表达式从入门到入土(1)—— REGEXP对象

时间:2024-10-19 14:07:14

REGEXP对象

JavaScript通过内置对象RegExp支持正则表达式,有两种方法实例化RegExp对象。

1.字面量

2.构造函数

字面量

字面量是直接通过/.../创建RegExp对象实例。

var reg = /\bis\b/
var text = 'He is a boy.' var result = text.replace(reg, 'IS') // 'He IS a boy.'

构造函数

构造函数版本看起来比较像Java中创建实例的样子,但是正如不推荐使用new Array而是使用[]创建数组一样,推荐使用字面量创建RegExp对象实例。

var reg = new RegExp('\\bis\\b', 'g')
var text = 'He is a boy. It is a dog' var result = text.replace(reg, 'IS') // 'He IS a boy. It IS a dog'

修饰符

在正常情况下,正则匹配到第一个匹配项则停止,并且默认大小写敏感,如果想修改默认选项,则需要修饰符。值得一提,修饰符可以同时使用,比如我想要全局大小写不敏感,则同时在正则末尾加上gi

g:global 全文搜索

i:ignore case 忽略大小写

m:multiple lines 多行搜索

var reg = /\bis\b/gi
var text = 'He is a boy. It Is a dog' var result = text.replace(reg, 0) // 'He 0 a boy. It 0 a dog'