0
const str = `zell class="www-some" bro and class="ded_Me" or addClass('coolman') also addClass("boo-boo")`;
const allCssClassRegex = /addClass\(["|']([a-zA-Z0-9-_]+)["|']\)|class=["|']([a-zA-Z0-9-_]+)["|']/gi;
let match;
while ((match = allCssClassRegex.exec(str)) != null) {
console.log(match);
}
私は2つのパターンを一致させ、配列の2番目のメンバーを一致させようとしています。以下のように出力が見える:試合の第二のメンバーが定義されていないので、それは何らかの形でグループとして解釈されるリテラル(
と思わJavascriptの正規表現は、リテラル括弧をグループ化していますか?
[ 'class="www-some"',
undefined,
'www-some',
index: 5,
input: 'zell class="www-some" bro and class="ded_Me" or addClass(\'coolman\') also addClass("boo-boo")' ]
[ 'class="ded_Me"',
undefined,
'ded_Me',
index: 30,
input: 'zell class="www-some" bro and class="ded_Me" or addClass(\'coolman\') also addClass("boo-boo")' ]
[ 'addClass(\'coolman\')',
'coolman',
undefined,
index: 48,
input: 'zell class="www-some" bro and class="ded_Me" or addClass(\'coolman\') also addClass("boo-boo")' ]
[ 'addClass("boo-boo")',
'boo-boo',
undefined,
index: 73,
input: 'zell class="www-some" bro and class="ded_Me" or addClass(\'coolman\') also addClass("boo-boo")' ]
(1、2つのスロットが一致しています)。
この正規表現を修正して2番目の配列スロットを一致させるにはどうすればよいですか?