7

私は正規表現があまり得意ではないと思うので、ここに私の問題があります(解決するのは簡単だと思いますが、どういうわけか方法を見つけることができないようです)

var word = "aaa";
text = text.replace( new RegExp(word, "g"),
                     "<span style='background-color: yellow'>"+word+"</span>");

これはほとんどの場合に機能します。

私がやりたいのは、単語の後に char /がなく、前に char "がない場合にのみ、正規表現が機能することです。

4

3 に答える 3

3

この正規表現を使用できます:-

'([^"])' + word + '(?!/)'

そしてそれを-に置き換えます"$1g"

Javascriptは後読みをサポートしていないことに注意してください。"したがって、否定された文字クラスを使用して、前の文字をキャプチャし、そうでないことを確認する必要があります。

http://fiddle.re/zdjtでデモを参照してください

于 2012-12-24T08:53:30.367 に答える