首页 > 正则表达式:/^|\s+/是什么意思?

正则表达式:/^|\s+/是什么意思?

问题:
看到一个实现对类名字符串进行分割的函数,里面的正则不太理解

代码:

  function classes(name) {
    return (name + "").trim().split(/^|\s+/);
  }

疑惑:
我知道s匹配各种空白字符串(nt)等,那么前面的 ^ 符号是用来匹配字符串的第一个字符,但是组合起来是什么意思?


.split(/\s+/) 即可,^ 是多余的。


竖线 | 表示“或者”
就是两者之一:开头或者空白


^匹配的是字符串的开头
|匹配的是该符号左边或右边的子表达式
s匹配的是一个空白符
+匹配前一项1次或多次
.split(/^|s+/)将字符串按一个或多个空格进行分割成数组

【热门文章】
【热门文章】