作者knives ()
看板RegExp
標題[問題] 濾掉除了img其他的html tag
時間Fri May 25 16:24:27 2012
我想要濾掉 html 裡面除了 img
其他像<iframe>、<br>、.... 的tag全部濾掉
我現在是寫 <[^<]+*> 可以濾掉 所有的html
但是我要怎麼濾掉特定的tag
一直想不出來該怎麼寫
謝謝幫忙
<[^<][^(img)]*>
我寫成上面這樣,會連iframe 也抓到
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.126.209.219
※ 編輯: knives 來自: 59.126.209.219 (05/25 16:49)
1F:推 mars90226:<(?!\/?img)[^>]+>,(?!pattern)是正向否定預查 05/25 18:16
2F:→ qwertmn:<[^<]img\s+.?\/> 感覺你搞錯[]的用法了喔~ 05/25 19:16
3F:→ qwertmn:上面是抓img tag的方法~抓非img的1f有了~ 05/25 19:20
4F:→ blackkaku:<[^<]img\s+.?\/>,這抓得到東西嗎?? 05/25 21:12
5F:推 l10nel:這不容易單獨用regexp解決,即使negative lookahead也會 05/26 03:55
6F:→ l10nel:誤判而濾掉過多,正確做法必須至少能區分attribute的名/值。 05/26 03:57
7F:推 l10nel:抱歉,請忽略以上兩行,我一時以為img是attribute name。 05/26 04:03
8F:→ qwertmn:冏rz 我腦殘了打錯" <img\s+.*?\/> 這才能抓img tag.. 05/26 14:28
9F:→ PurpleCrow:我老是看不懂題目在問什麼 冏 05/28 10:45