语法:/正则表达式主体/修饰符(可选)
例如:var frk_reg = /beixi/i;
一般在实际开发中正则表达式会配合字符串的search和replace方法来使用。
常见的修饰符类型有三种:i 、g
i修饰符,表示正则检索内容时不区分大小写
g修饰符,表示正则检索内容时采用全局匹配,而不是找到第一个就停止。
常见的检索模式有表达式模式、元字符模式和量词模式三种。
表达式模式
a) [abc]在指定字符串中检索,查找任何满足【存在于方括号中】规则的字符或字符串。
b) [0-9]
c) (m|n)在指定字符串中检索,查找任何满足【以|分隔的选项之一】的字符或字符串。
元字符模式
a) \d在指定字符串中检索,查找任何【是数字】规则的字符或字符串。
b) \s在指定字符串中检索,查找任何【是空白】规则的字符或字符串
c) \b在指定字符串中检索,查找任何【是单词边界】规则的字符或字符串
量词模式
a) n+在原字符串中检索任何【包含一个或多个n】的子字符串。
b) n*在原字符串中检索任何【包含0个或多个n】的子字符串。
c) n?在原字符串中检索任何包含0个或1个n的子字符串
语法:
var regExp = new RegExp(正则表达式内容,修饰符);
例如:
var regExp = new RegExp('ab','g');//【等价于正则表达式:/ab/g】
var str = '12abc12abABC';
var newStr = str.replace(regExp,'(frank)');
console.log(newStr);//12(frank)c12(frank)ABC
(1)RegExp对象的test()方法 本方法是RegExp对象中提供的一个方法,用来判断在【指定字符串中】是否存在【满足正则表达式规则】的子字符串。存在就返回true,反之返回false。
(2)RegExp对象的exec()方法
本方法是RegExp对象中提供的一个方法,用来查找在【指定字符串中】【第一个】【满足正则表达式规则】的子字符串出现的【下标和内容】。
本方法的返回值是是一个信息集合(对象),但是可以当做数组一样使用。若查找失败,则返回结果为null。
^初位字符:表示判断字符串以某个内容开始
$末位字符:表示判断字符串以某个内容结束
subStr{n}:想要检索的内容恰好出现n次
subStr{n,}:想要检索的内容至少出现n次
subStr{n,m}:想要检索的内容至少出现n次,至多出现m次
贪婪模式(greed):
只要符合正则要求就一直向下匹配,直到无法再匹配为止的行为模式(例如n*)
懒惰模式:
一旦匹配到复合正则要求的内容就立即结束的行为模式。(例如n?)
脱字符是正则中^符号的一种特殊表达方式,表示【不是...】的意思。当且仅当^符号出现在中括号的首位时,我们称^符号为脱字符。