你能只用一个正则表达式提取这些“键:值”对吗?
"a: xyz b: pqr st c: lm no p"
我想要的结果:
"a" => "xyz"
"b" => "pqr st"
"c" => "lm no p"
我的尝试(使用两个正则表达式)
var s = 'a: xyz b: pqr st c: lm no p';
var r = /(?:.(?!(?:a|b|c):))+/g;
var m;
while ((m = r.exec(s))) {
var s2 = m[0];
var r2 = /(a|b|c):\s*(.+)/;
var m2 = r2.exec(s2);
console.log('"' + m2[1] + '" => "' + m2[2] + '"');
}
我得到的结果:
"a" => "xyz "
"b" => "pqr st "
"c" => "lm no p"
那么,这可以只用一个正则表达式来完成吗?