我有幾行HTML文件看起來像這樣:刪除<a>標籤在othre標籤的日中間
<div class="thumb tright">
<div class="thumbinner" style="width:302px;">
<a href="https://example.com/en/File:Tools_my_settings.png" class="image">
<img alt="" src="images_en/thumb/0/0a/tool_settings.png/9dd94c2d99eea9.png" width="300" height="110" class="thumbimage" srcset="/my/en/images_en/thumb/0/0a/my_settings.png/450px-my_settings.png 1.5x, /31/en/images_en/thumb/0/0a/my_settings.png/600px-my_settings.png 2x"/>
</a>
<div class="thumbcaption">
<div class="magnify">
<a href="https://example.com/en/File:Tools_my_settings.png" class="internal" title="Enlarge"></a>
</div>
Tool settings
</div>
</div>
</div>Tools Features - So Far
我需要刪除以下href和緊接着的.png 2x"/>
文字對應的結束標記</a>
元件。
<a href="https://example.com/en/File:**Tools_my_settings.png" class="image">...</a>
末我需要的線看起來像這樣:
<div class="thumb tright">
<div class="thumbinner" style="width:302px;">
<img alt="" src="images_en/thumb/0/0a/tool_settings.png/9dd94c2d99eea9.png" width="300" height="110" class="thumbimage" srcset="/my/en/images_en/thumb/0/0a/my_settings.png/450px-my_settings.png 1.5x, /31/en/images_en/thumb/0/0a/my_settings.png/600px-my_settings.png 2x"/>
<div class="thumbcaption">
<div class="magnify">
<a href="https://example.com/en/File:Tools_my_settings.png" class="internal" title="Enlarge"></a>
</div>
Tool settings
</div>
</div>
</div>Tools Features - So Far
所有文件包含相同的百通:<a href="https://choopy.com/en/File:
... 這是我曾嘗試:
find /var/www/clients/client1/web2/web/lms_docs/ -type f -print0 | xargs -0 sed 's/<a\shref="https:\/\/choopy.com\/en\/File:([--:\[email protected]%&+~#=]*[a-z])\.png"\sclass="image">//g'
但它沒有做任何事情,我不知道如何刪除相應的結束標記</a>
你不想來代替'的https://choopy.com ......',不是嗎?但是你的代碼是爲此而設計的。你應該用'https://example.com ...'刪除鏈接,對嗎? –
對不起,我修復了原來的帖子...... – James
股票建議:不要嘗試使用像sed這樣的面向行的工具來處理XML。改爲使用'xmlstarlet'或'xsltproc'。 –