- 45 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/10/25(土) 21:30:51 ID:NQ5+ApaF0]
- ふと思ったんだけど、フィルター書くときに
<a\s[^>]++href= とかよく使うと思うんだけど、 例えば、<a onClick="〜for(i=0;10>i;i++)〜" のように不等号として<と>が使われてるとうまくマッチしないな。 で、さらに突き詰めると、<a title=">"〜>とか書かれたらオミ殺しになってしまう。 やっつけでクォートされた<と>を&lt;と&gt;に置き換えるフィルタ作ったんで添削ヨロ。 [Patterns] Name = "Replace Quoted <> test1" Active = TRUE Multi = TRUE URL = "$TYPE(htm)" Limit = 1536 Match = "(^(^<[a-z]+\s[^>]++=$AV(*[<>]*)))" "" "(<[a-z]+\s)\#(" "([^>]++=)\#$AVQ(" "((?++)\#(($NEST(\(,\)))\#|<$SET(#=&lt;)|>$SET(#=&gt;)))+\#)" ")+" Replace = "\@" ・クォートされた、<と>を実体参照に置換 例.title="(>_<)"など ・スクリプトなどで不等号として使われるものを置換すると動かなくなるっぽいので、 ()内は、$NEST(\(,\))でスルー 結局、最初の<a onClick="〜for(i=0;10>i;i++)〜"みたいなのは対処できず。 誰か知恵をお貸しくだされ。
|

|