0

次の文字列セットがあります

big-div button-green
big-div button-red
big-div button-yellow

そして、私は次の結果を得たいです

green
red
yellow

なんとかここまでたどり着きましたが、次/\sbutton-[^\s]*/giのように文字列全体に一致しますbutton-yellow

前もって感謝します!

4

3 に答える 3

1

キャプチャ グループを配置する[^\s]*と、最初のキャプチャ グループとしてアクセスできます。

あるいは、私はそれを次のように書きます...

var match = (str.match(/\sbutton-(\S*)/gi) || [])[1];

これにより、一致するか、一致しundefinedない場合があります。

もクラスの場合strは、境界を交換する(?:^|\s)(?:$|\s)、そうでなければ一致さ\sせ、一致する文字列をスペースでラップします。

于 2012-12-10T02:56:42.083 に答える
1
str.match(/\sbutton-([^\s]*)/i)[1]
于 2012-12-10T02:57:09.020 に答える
1

答えはタイトルにあります: キャプチャ グループを作成するだけです:

/\sbutton([^\s]+)$/i

返された一致配列の最初の要素を取得します。これには、関心のある文字のみが含まれます

于 2012-12-10T02:57:36.710 に答える