0

スクリーンショット付きの何百ものガイドを含む表があります。スクリーンショットの画像は、以前はクリック可能だったのでアンカー タグで囲まれていましたが、アンカー タグを削除する必要があります。削除するすべてのアンカー タグにはhref=#screenshot、次の例のように数字が続きます。私の計画は、mysqldump を使用してテーブルをダンプし、sedを使用して正しい文字列を見つけて置き換えることです。

<p>Choose <a href="/components">components</a> to install and click next.</p>
<div class="screen">
<a href="#screenshot3"><img src="/images/screens/install/step3.jpg" alt="Step 3"></a>
</div>

する必要があります

<p>Choose <a href="/components">components</a> to install and click next.</p>
<div class="screen">
<img src="/images/screens/install/step3.jpg" alt="Step 3">
</div>

を使用して最初のタグを<a\shref\=\"#screenshot\d+\"\>一致させることができますが、他のアンカー タグを削除せずに両方を削除できるように、2 番目の終了タグも一致させる必要があります。どんな助けでも大歓迎です!

4

1 に答える 1

1

交換してみることができます

<a\shref\=\"#screenshot\d+\"\>(.*)<\/a>

\1

\1括弧はそれらの間にあるすべてのものをキャプチャするので、 , \2...を使用して復元できます。

ただし、HTML を変更しようとする場合、正規表現は適切な武器ではないことに注意してください。説明については、これ(およびその周りのコメント) をお読みください。

于 2013-03-02T09:19:32.243 に答える