【发布时间】:2014-01-29 00:05:11
【问题描述】:
$ node
> "ababaabab".split(/a{2}/)
[ 'abab', 'bab' ]
> "ababaabab".split(/(a){2}/)
[ 'abab', 'a', 'bab' ]
>
所以,这对我来说没有意义。有人可以解释一下吗?我不明白为什么会出现'a'。
注意:我正在尝试匹配双行结尾(可能在 Windows 文件上),所以我在 /(\r?\n){2}/ 上进行拆分。但是我的数组中有无关的'\015\n' 条目(注意\015 == \r)。
为什么会出现这些?
注意:也会影响浏览器中的 JS 引擎,所以这是特定于 JS 而不是节点的。
【问题讨论】:
-
有趣 - 在 ruby 中也有同样的行为。
标签: javascript regex