假设我有多行文本:
阿尔法
试用版
伽马
三角洲
并且我只想使用 JS exec
函数检索elt
第一次出现之前的行,即:
阿尔法
试用版
伽马
我试过
/([Ss]*)[^n]*?elt.*/.exec(text)[1]
但它返回:
阿尔法
试用版
伽马
d
你也许在寻找/([Ss]*)n.*?elt/
?
var text = "alphanbetangammandelta";
console.log(/([Ss]*)n.*?elt/.exec(text)[1]);
这给了:
"阿尔法
试用版
伽玛"
这会导致"gamma":
var data = "alphanbetangammandelta";
var parts = data.match( /.*n(.*)n.*elta/m );
console.log(parts[1]);
这个解决方案呢?
var s = 'alphanbetangamma';
s.split(/n.*?amm/)[0].split('n'); // ["alpha", "beta"]
var s = 'alphanbetangammandelta';
s.split(/n.*?amm/)[0].split('n'); // ["alpha", "beta"]
var s = 'alphanbetangamandelta';
s.split(/n.*?amm/)[0].split('n'); // ["alpha", "beta", "gama", "delta"]