1

私はこのjQueryを持っていますが、文字列を検索して置き換えたいと思います。私はphpで$0, $1, $2一致を取得するためになどを使用できることを知っています。

これは、この例でphp$0を介してこれを行う方法であり、見つかったものに置き換えられ、plater上部/下部のケーシングを維持します。

preg_replace("/plater/i", "<span class='plater'>$0</span>", $input);

JavaScriptでこれを行うにはどうすればよいですか?$ 0を試してみると、実際には$ 0がブラウザに出力されますが、見つかったものは出力されません。これが私が現在持っているものです:

$(document).ready(function(){
    var html = $("body").html();
    $("body").html(html.replace(/plater/ig, "<span class='plater'>$0</span>"));
});
4

3 に答える 3

3

括弧で囲んでキャプチャし、$1を使用して「最初の」キャプチャグループを参照します。

html.replace(/(plater)/ig, "<span class='plater'>$1</span>")

いくつかの言語での正規表現のガイド:http://www.regular-expressions.info/javascript.html

于 2013-01-07T22:56:56.247 に答える
2

文字列を置き換えるには:

html.replace(/(plater)/ig, '<span class="plater">$1</span>');

https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/String/replace

于 2013-01-07T22:56:20.293 に答える
1

「plater」を検索しているだけなので、手間を省いplaterて文字列に単語を書くだけ$&で済みますが、一致全体を参照するために使用できます。

于 2013-01-07T22:56:17.203 に答える