このキャプチャを希望どおりに動作させることができません:
私の目的は、最初のキャプチャ グループの長さを文字列でキャプチャすることです。
var regex = /(_)?;([\w]+);([\w]+);/;
var string = "____;foo;bar;";
var matches = regex.exec(string);
console.log(matches); // outputs ["_;foo;bar;", "_", "foo", "bar"]
ご覧matches[1]
のとおり、アンデススコアのキャプチャ グループが含まれていますが、すべてのアンダースコアではなく、一致した文字が表示されます。私が期待するのは、この結果です:
["_;foo;bar;", "_____", "foo", "bar"]
正規表現でこれを達成する方法はありますか? ;
文字列を...で分割することは避けたいと思います