- 1 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/07/10(月) 06:09:39 ID:8aujFXYU0]
- このスレは作成依頼されたフィルタを
有志により作るスレッドPart4です 煽り、荒しは放置してください 【関連サイト】 Proxomitron-J ttp://www.pluto.dti.ne.jp/~tengu/proxomitron/ 日本語訳ヘルプ ttp://www.pluto.dti.ne.jp/~tengu/proxomitron/help/Contents.html 本体(N4.5May)とその日本語化パッチ、OpenSSLライブラリのダウンロード ttp://www.pluto.dti.ne.jp/~tengu/proxomitron/download.html アップローダー ttp://wind.prohosting.com/proxmine/cgi-bin/uploader/ 4.5June+shift_jis誤爆回避日本語化+RWIN32768回避+バイパス赤icon+有難屋icon な本体 wind.prohosting.com/proxmine/cgi-bin/uploader/download.cgi?PmU_0338.zip IE用必須設定(高速化)・過去ログ・FAQ・ime.nu消し・関連リンク ttp://www2.wbs.ne.jp/~go-to/prx/faq.html 【関連スレ】 Proxomitron Part25 ttp://pc8.2ch.net/test/read.cgi/win/1115110149/ ■■■■Proxomitron入門スレッド■■■■5 ttp://pc8.2ch.net/test/read.cgi/pcqa/1107577736/ ブラクラにProxomitronで対抗するスレPart5 ttp://pc8.2ch.net/test/read.cgi/software/1060792740/ 【過去スレ】 Proxomitron フィルタ作成スレッド ttp://pc5.2ch.net/test/read.cgi/software/1083337210/ Proxomitron フィルター作成スレッド Part2 ttp://pc8.2ch.net/test/read.cgi/software/1100052614/
- 905 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/10/27(金) 15:33:23 ID:cpcnkQie0]
- 昨日、寝る前にベッドの中で思いついたアイデアを今思い出したので、書き残しておきます。
hrefの中で../を発見することが相対リンク→絶対リンクの発動条件ですが、これを肯定先読みを使うことで よりスマートに、より複雑に、より分かりづらいフィルタに(w)することができます。 href=$AV((^(^../)) この段階でフィルタの発動条件を満たします。 この直後に現在いる階層の深さを測ります。(>902をそのまま利用) ($TST(SWITCH=1)$SET(\0=URL)| $URL([^:]+://[^/]+/$LST(increment)([^./]+/$LST(increment))+)$SET(URL=\0)$SET(SWITCH=1)) そしてhref内の../を数え上げて、decrementによって引き算します。 (../$LST(decrement))+(*)\3 最後に>900をそのまま利用します。 以上より Match = "$NEST(<a\s,\1href=$AV((^(^../))($TST(SWITCH=1)$SET(\0=URL)|" "$URL([^:]+://[^/]+/$LST(increment)([^./]+/$LST(increment))+)$SET(URL=\0)$SET(SWITCH=1))(../$LST(decrement))+(*)\3)(*)\4,>)" "$URL(([^:]+://[^/]+/$LST(decrement)$TST(\0=[^0])([^./]+/$LST(decrement)$TST(\0=[^0]))+)\5)" Replace = "<a \1href="\5\3"\4>" href=$AV()の中に詰め込んだだけで、それ以外は何も変わりません。
- 906 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/10/27(金) 16:26:44 ID:cpcnkQie0]
- ウェブ上での動作確認版
Name = "URL" Active = TRUE URL = "$TYPE(htm)" Limit = 256 Match = "$NEST(<a\s,\1href=$AV((^(^../))($TST(SWITCH=1)$SET(NUM=$GET(URL))|" "$URL([^:]+://[^/]+/$SET(NUM=1)([^./]+/$LST(increment))+)$SET(SWITCH=1)$SET(URL=$GET(NUM)))(../$LST(decrement))+(*)\3)(*)\4,>)" "$URL(([^:]+://[^/]+/$LST(decrement)$TST(NUM=[^0])([^./]+/$LST(decrement)$TST(NUM=[^0]))+)\5)" Replace = "<a \1href="\5\3"\4>" incrementリストの中身 *********************************************** $TST(NUM=1)$SET(NUM=2) $TST(NUM=2)$SET(NUM=3) $TST(NUM=3)$SET(NUM=4) $TST(NUM=4)$SET(NUM=5) $TST(NUM=5)$SET(NUM=6) $TST(NUM=6)$SET(NUM=7) $TST(NUM=7)$SET(NUM=8) $TST(NUM=8)$SET(NUM=9) $TST(NUM=9)$SET(NUM=A) $TST(NUM=0)$SET(NUM=1) ************************************************
|

|