文字列から関数の引数を抽出しようとしていますs
var s = "function (a, b, c) { return \'hello\'; }";
var re = /^function[^\(]*\(\W*(?:(\w+)[,\s)]*)+\)/g;
console.log( re.exec(s) );
/*
[ 'function (a, b, c)',
'c',
index: 0,
input: 'function (a, b, c) { return \'hello\'; }' ]
*/
問題
キャプチャーのみc
です。
望ましい出力
/*
[ 'function (a, b, c)',
'a',
'b',
'c',
index: 0,
input: 'function (a, b, c) { return \'hello\'; }' ]
*/
免責事項
このコードはモジュールで使用され、単一の正規表現で実行する必要があります。StackOverflow で見た他の手法は機能しません。