これらの「キー: 値」のペアを 1 つの正規表現のみで抽出できますか?
"a: xyz b: pqr st c: lm no p"
私が望む結果:
"a" => "xyz"
"b" => "pqr st"
"c" => "lm no p"
私の試み(2つの正規表現を使用)
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"
それで、これは1つの正規表現だけで行うことができますか?