前端正则表达式书写以及常用的方法

前端正则表达式书写

一.写法

写法一

/正则表达式/修饰符

修饰符

  • /i (忽略大小写)
  • /g (全文查找出现的所有匹配字符)
  • /m (多行查找)

例子:/a/gi 查找内容中的a

不写修饰符默认只匹配一个

写法二

let a = new RegExp('/正则表达式/','修饰符');

二.常用几个方法

1.match

方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。

返回的内容

["匹配到的内容", index: 3, input: "字符串对象", groups: undefined]

如果regexp修饰符为/g则返回对象为一个数组

语法:

1.stringObject.match(str)
2.stringObject.match(regexp)

拿查找字符串abc 中的a举例

'aabc' .match('a');    //只匹配第一个
'aabc' .match(/a/);   //只匹配第一个
'aabc' .match(/a/g);   //匹配到2个

2.replace

用于字符串中一些字符替换另一些字符,或替换一个与正则表达式相匹配的子串

语法:

1.stringObject.replace('查找的第一个字符串','修改后的字符串');

2.stringObject.replace(regexp(正则表达式匹配到的内容所有替换),'修改后的字符串');

3.search

他用法与match类似不过他返回的是索引

语法:

1.stringObject.search('searchvalue');

2.stringObject.search(regexp);

4.test

方法用于检测一个字符串是否匹配某个模式,如果字符串中含有匹配的文本,则返回 true,否则返回 false。

语法:

regexp.test(stringObject);

/a/.test('a');  //返回true
/a/.test('ac'); //返回true
/a/.test('c');  //返回false

5.exec

方法就是用来检索字符串中正则表达式的匹配,如果匹配到了那么就返回一个存放有结果的数组,如果没有匹配到就返回一个null

regexp.exec(stringObject)

其实和match类似,不过就是填写的位置反一下

但是有一点  

console.log('c'.exec('c'));  #会报错
console.log('c'.match('c')); #会匹配c

作者:大前端世界
链接:https://www.jianshu.com/p/6f4a238daa9e  

  

  

  

  

  

  

  

posted @ 2020-02-12 10:48  奋起直追  阅读(378)  评论(0编辑  收藏  举报