js正则

正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则的字符串,

正则表达式通常被用来检索、替换那些符合某个模式的文本

声明方式

首先是正则表达式的创建,有2种办法:

使用RegExp的显式构造函数,语法为:

new RegExp("pattern"[,"flags"])

使用RegExp的隐式构造函数,采用纯文本格式:

/pattern/[flags]

pattern部分为要使用的正则表达式模式文本,是必须的。
在第一种方式中,pattern部分以JavaScript字符串的形式存在,需要使用双引号或单引号括起来;
在第二种方式中,pattern部分嵌套在两个“/”之间,不能使用引号。 

flags部分设置正则表达式的标志信息,是可选项。
如果设置flags部分,在第一种方式中,以字符串的形式存在;
在第二种方式中,以文本的形式紧接在最后一个“/”字符之后。

flags可以是以下标志字符的组合。

g是全局标志。如果设置了这个标志,对某个文本执行搜索和替换操作时,将对文本中所有匹配的部分起作用。如果不设置这个标志,则仅搜索和替换最早匹配的内容。

i是忽略大小写标志。如果设置了这个标志,进行匹配比较时,将忽略大小写。

m是多行标志。如果不设置这个标志,那么元字符“ ^”只与整个被搜索字符串的开始位置相匹配,而元字符“$“只与被搜索字符串的结束位置相匹配。如果设置了这个标志,“ ^ ”还可以与被搜索字符串中的“\n”或“\r”之后的位置(即下一行的行首)相匹配,而“$”还可以与被搜索字符串中的“\n”或“\r”之后的位置(即下一行的行尾)相匹配。

普通字符

转义字符

\w  \W  \d  \D  \s  \S  
var reg = /\w/;//单个的字母数字下划线
var reg = /\W/;//单个的非字母数字下划线
var reg = /\d/;//单个数字字符
var reg = /\D/;//单个非数字字符
var reg = /\s/;//单个空白字符
var reg = /\S/;//单个的非空白字符

元字符

. * + ? {} [] () | ^ $
var reg = /./;//除了换行外的其它任意字符
var reg = /z*/;//匹配0次或多次
var reg = /z+/;//匹配至少1次或多次
var reg = /\w+?/;//禁止贪婪 
var reg = /\w{5}/;//限制匹配的次数
var reg = /\w{5,12}/;//限制匹配5到12次
var reg = /[a-zA-Z0-9]+/;//字符范围
var reg = /\d+(\w+)\w+/;//子组
var reg = /abc|def|123/;//或
var reg = /^\$/;//限制开始
var reg = /a$/;//限制结尾

正则对象方法

  • exec(string),对string进行正则处理,并返回匹配结果.该方法使用创建RegExp对象实例时所指定的表达式模式对一个字符串进行搜索,并返回一个包含搜索结果的数组。如果 exec 方法没有找到匹配,将返回 null。
  • test(string),测试string是否含有匹配结果,如果存在就返回True,否则返回False。

String正则表达方法

  • match(pattern) 根据pattern进行正则匹配,如果匹配到,返回匹配结果,如匹配不到返回null
  • search(pattern) 根据pattern进行正则匹配,如果匹配到一个结果,则返回它的索引数;否则返回-1
  • replace(pattern,replacement) 根据pattern进行正则匹配,把匹配结果替换为replacement,该方法并不改变调用它的字符串本身,而只是返回替换后的字符串。
  • split(pattern) 根据pattern进行正则分割,返回一个分割的数组
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值