制御できない Web ページを操作する Chrome 拡張機能を開発しているため、既存の css クラスと html コードを編集できません。次の例に基づいて、段落内の 2 つの単語の間にテキストを挿入しようとしています。
<p class="abc">
<b>Title:</b>The Second Title
<br>
<b>Author:</b>Mary White
<br>
<b>Date:</b>2004
</p>
<p class="abc">
<b>Title:</b>The First Title
<br>
<b>Author:</b>John Smith
<br>
<b>Date:</b>2003
</p>
次のような名前のリストがあります。
メアリー・ホワイト -> メアリー・B・ホワイト
ジョン・スミス -> ジョン・L・スミス
氏名をフルネームに置き換える必要があります。例: John Smith -> John L. Smith
私は次のことを試しました:
$(".abc:contains('Mary White')").text(function () {
return $(this).text().replace("Mary White", "Mary B. White");
});
<b>
ただし、これによりおよび<br>
html タグが削除されます。
私もこれを試しました:
$(".htp:contains('John Smith')").replaceWith("John L. Smith");
しかし、それは p 全体を置き換え、それを完全な名前に置き換えます。中間のイニシャルを含む名前の段落を表示するにはどうすればよいですか?