たとえば、次のようなテキスト文字列があります。
<div id="ideal">The quick brown fox jumps over the lazy Stack Overflow user</div>
生成する HTML で最後の単語('user')をラップしたいと思います。
<div id="ideal">
The quick brown fox jumps over the lazy
Stack Overflow <span class="foo">user</span>
</div>
これまでのところ、スペースを使用して文字列を分割し、一致を置き換えることを検討しましたが、ほとんどのソリューションは正規表現を使用しますが、正規表現は文字列の他の場所で繰り返される単語である可能性があります.
現在、部分文字列を使用して次の作業を行っています。
var original = document.getElementById("ideal").textContent;
var para = original.split(" ");
var paracount = para.length;
var wordtoreplace = para[paracount-1];
var idx = original.lastIndexOf(wordtoreplace);
var newStr = original.substring(0, idx) + '<span class="foo">' + wordtoreplace + '</span>';
ただし、これは純粋な JavaScript を使用してのみ機能し、多くのインスタンスで繰り返し可能な関数としては機能しません。<div class="ideal">
の1つ以上のインスタンスに対して(IDではなくクラスを介して)これを行うためにjavascriptまたはjQueryを使用する繰り返し可能な方法はあります<div class="ideal">
か?