作者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