0

現在、解析しようとしている文字列に次の HTML がありますreReplaceNoCase

<blockquote class="id-1241">
<p>Stuff</p>
</blockquote>
<p>Test</p>
<blockquote class="id-2441">
<p>More stuff</p>
<blockquote>
<p>Test</p>
</blockquote>
</blockquote>

最終的にこれを次のように変換したいと思います。

{{1241}}
<p>Test</p>
{{2441}}

そこで、blockquote クラスから id を取り出し、それを使用して blockquote を置き換えたいと思います。私は現在reReplaceNoCaseこれを行うために使用していますが、正しいblockquote開始タグに「接続」されているものではなく、最後のblockquote終了タグの最後で正規表現を終了していることに気付きました。

{{1241}}

これは私が現在使用しているものです:

reply = reReplaceNoCase(reply, '<blockquote class="id-([0-9]+)">(.*)</blockquote>', '{{\1}}', 'ALL');

誰かが私が望む結果のより良い例を持っていますか? reFind などでループを使用できると思いますが、これは面倒すぎるようです。これを行うためのより簡単な方法があり、パフォーマンスも向上するのではないかと思います。

可能であれば、Java を直接使用することも避けたいと思います。

4

1 に答える 1

0

最終的に jQuery を使用することになりました。クライアント側で行うのは好きではないと言いましたが、私が働いている会社もライブラリにあまり依存することを好みません。

jQuery でそれをどのように行ったかを説明する必要はないと思います。なぜなら、それは非常に簡単であり、jQuery の要素の変更に関するチュートリアルがすでに 100 万も存在するからです。

于 2013-08-13T10:30:38.440 に答える