正则表达式

正则表达式

很多遇到需要字符串操作的地方都是搜索了正则草草了事,没有认真记录下来,现在是该认真学习下了
正文只是笔记并非学习教程,学习者勿驻足O(∩_∩)O~

创建正则表达式

  • 正则表达式字面量
    1
    var re = /ab+c/;
  • 调用RegExp对象的构造函数
    1
    var re = new RegExp("ab+c");

编写正则表达式的模式

强大的正则匹配表达式是各种字符的组合,特殊字符的意义都要严格对应使用。

正则表达式中的特殊字符

字符 含简单说明简单说明简单说明简单说明义 简单说明
\ 转义字符
^ 匹配开始 /^A/.test('Ab c') // ture
/^A/.test(' Ab c') // false
如果多行标志被设置为true,那么也匹配换行符后紧跟的位置
$ 匹配结束 /t$/.test('eater') // false
/t$/.test('eat') // true
* 匹配前一个表达式0次或多次,等价于 {0,}
+ 匹配前面一个表达式1次或者多次。等价于 {1,}
? 匹配前面一个表达式0次或者1次。等价于 {0,1}
. (小数点)匹配除了换行符(\n)之外的任何单个字符 类似占位符的作用
x¦y 匹配x或者y
{n} n是一个正整数,匹配了前面一个字符刚好发生了n次 'caaandy'.match(/a{2}/g) // ‘aa’
{n,m}

顺便吐槽下hexo的渲染为什么不支持表格宽度设置o(╯□╰)o

使用正则表达式

正则表达式可以被用于RegExp的exec和test方法以及 String的match、replace、search和split方法。这些方法在JavaScript 手册中有详细的解释。

经不住似水流年  逃不过此间少年
0%