1. ホーム
  2. ジャバスクリプト

[解決済み】JavascriptをMatched Groupに置き換えると?

2022-04-01 20:39:31

質問

次のような文字列があります。 hello _there_ . 2つのアンダースコアを次のように置き換えます。 <div></div> を使って、それぞれ ジャバスクリプト . 出力は次のようになります(したがって)。 hello <div>there</div> . 文字列には、複数のアンダースコアのペアが含まれる場合があります。

私が探しているのは、次のような方法です。 どちらか は、Rubyが行う方法で、各マッチに対して関数を実行します。

"hello _there_".gsub(/_.*?_/) { |m| "<div>" + m[1..-2] + "</div>" }

または マッチしたグループを参照することができます。

"hello _there_".gsub(/_(.*?)_/, "<div>\\1</div>")

何かアイデアや提案はありますか?

解決方法は?

"hello _there_".replace(/_(.*?)_/, function(a, b){
    return '<div>' + b + '</div>';
})

あ、それ以外にも。

"hello _there_".replace(/_(.*?)_/, "<div>$1</div>")

EDIT by Liran H: 私を含め6人分。 $1 は動作しませんでしたが \1 ができました。