我必须找到一条直线。该行是\ r \ n或\ r或\ n取决于操作系统。
为了简化它,我想从ha或h或
开始所以在blah!
它应该给我['bla','a']
然而,我一直得到['bla','la']因为js以前没有负面看。
我想知道如何做到这一点。
这是我的尝试:
var patt = /.*?(ha|h(?!a)|[^h]a)/;
var m = patt.exec('blah!')
答案 0 :(得分:1)
如果您不想匹配ha
之前的任何其他符号而不是[^h]a
,则无需在a
和h
之间切换:此... < / p>
ha|a
......就足够了。请记住,交替匹配从最左边的选项开始,并尝试尽可能多地覆盖。所以这个:
\r\n?|\n
......应该够了。