Proxomitron フィルタ ..
540:think ◆MM0nnAOCiQ
08/12/20 03:24:28 oFKFl7dL0
>539の続き。
> jsでURLを暗号化する方法は無限にあるからそこまで汎用性に気を使う必要性があるのかな?
汎用性に拘るのはもう癖になってますw
1. 学習のため
2. あとで同系フィルタを作る時の流用するため
今はちょっとしたアイデアがあって、2. の理由が大きいですね。
以下、第一弾。(>>532の相性問題への対応策です)
ポップアップブロック影響下でwindow.openによるリダイレクトを可能にするフィルタ - think49の日記
URLリンク(d.hatena.ne.jp)
541:名無しさん@お腹いっぱい。
08/12/20 03:26:25 ye/JCkK+0
<html>
<head>
<script language="JavaScript">
function caesar(s, n) {
var str = "";
for (var i = 0; i < s.length; i++) str += String.fromCharCode(s.charCodeAt(i) + n);
return str;
}
</script>
</head>
<body onLoad="eval(caesar('grkxz.(nkrru2&}uxrj(/A', -6));">
</body>
</html>
こんなショボい暗号化でも Proxomitron じゃもはや対処不可能でしょ。
ページ作成者が Proxomitron 対策を本気で練ってきたらほとんど無力になると思うよ。
今はこれでもまだまだ“知る人ぞ知るマイナーな存在”だから何とかなっているけど。
万能なフィルタなんて作れるわけがない。
542:think ◆MM0nnAOCiQ
08/12/20 03:27:43 oFKFl7dL0
>>540の続き。
>>537
> それと>>516の件は大丈夫なんでしょうか?
>516の件については、初め何のことを示唆しているのかわかりませんでした。
改めて>422氏のフィルタから見直すと
・>422は最初の $SET(qm=) でグローバル変数の初期化をしている
・>497は $SET(FutabaURL=) の行程を踏まずに、いきなり $GET(FutabaURL) を使用している
・>497も $SET(FutabaURL=) でグローバル変数を初期化すべきだ
という問題提起のように思えたので、その前提で話を進めます。(誤解でしたら、ごめんなさい)
結論からいうと、Proxomitronは一般的なプログラミング言語でいうところの「値無しでのグローバル変数の宣言」が出来ません。
下記はJavaScriptの例です。
▼JavaScriptでグローバル変数を宣言
var prx;
alert("Proxomitron");
これと同じ事をProxomitronで試みたのが下記ですが、これは期待通りに動作しません。
▼Proxomitronでグローバル変数を宣言
[Patterns]
Name = "Global val init [2008/12/20] test1"
Active = TRUE
Limit = 256
Match = "$SET(prx=)$TST(prx=*)$STOP()"
Replace = "Proxomitron"
検索表現を $SET(prx=1) に変更すると、期待通りに動作します。
このことから、「$SET(prx=) がグローバル変数の宣言処理となっていない」ことがうかがえます。
543:think ◆MM0nnAOCiQ
08/12/20 03:29:51 oFKFl7dL0
>>542の続き。
ちなみに、日本語公式ヘルプには、
-------------
グローバル変数をクリアするには、以下のように $SET を使ってください...
$SET(VarName=)
URLリンク(www.pluto.dti.ne.jp)
-------------
とあり、$SET(VarName=) は「変数の解放」を指していることがわかります。
初めに $SET(VarName=) を実行することは、宣言されていないグローバル変数を解放することであり、無駄な処理になってしまうと思います。
544:think ◆MM0nnAOCiQ
08/12/20 04:30:07 oFKFl7dL0
>>538
お疲れ様です。
適度に更新されると、安心して使い続けられますね。
私はNoScriptのホワイトリスト管理に疲れてすっかり遠ざかってしまいましたが、応援しています。
■>539,540のフィルタについて
>539と>540は共存できますが、ふたばちゃんねるではどちらか一方のフィルタしか働きません。
(両方適用しても問題有りませんが、ふたばちゃんねるでは一つしか働いていないため無駄になります。)
・JavaScript常時有効な環境 … 汎用性のある>540で対応する
・JavaScript常時無効な環境 … JavaScript不要な>530で対応する
545:名無しさん@お腹いっぱい。
08/12/20 07:05:01 cpxQuI4V0
なるべく一意の名前になる変数名を使えば問題は起きないだろうね。
場合によってはサイト名よりフィルタ名を変数名に含める方がより安全かもしれない。
ニコニコ界隈はそれほどスキルの高くない大勢が大量に一つのサイトのフィルタを作っているから
衝突が起こりかねない状態になってるなーと思うけど、通常はさほど心配ないんでないかね。
しかも衝突したところで直すのは容易だから、ま、心配するようなこっちゃないよ。
あ、別にニコニコのフィルタはドヘボばっかだなとかそういう変な意味はないのよ。
546:SpUKHlWqXr
08/12/20 08:01:24 YcACaKUb0
URLリンク(margaretaevangelos802.k2free.com) 粨蒟 璞瑣
547:IPJXIFatmF
08/12/20 08:03:15 p6xcSCXm0
URLリンク(helengo.awardspace.com) william patrick white
548:RxdSgLnvARboi
08/12/20 08:44:34 uGmJIDN+0
URLリンク(baptistechenaniah322.k2free.com) 粨蒟 璞瑣
549:defTiFmVxTEVR
08/12/20 08:48:24 NHtKM3XJ0
AAooNM
550:weXYqZaRYRRylvALv
08/12/20 10:21:52 BzIZ19780
URLリンク(michiencarnita949.gigazu.net) 粨蒟 璞瑣
551:GIdyHTxJtzLkhvcOX
08/12/20 10:48:14 1ZWi2fbZ0
URLリンク(encarnitabeitris645.gigazu.net) 粨蒟 璞瑣
552:TWqnYouXbhMA
08/12/20 11:14:55 xWlEUPTi0
URLリンク(daisukeajith402.k2free.com) 璞瑣 粨蒟
553:名無しさん@お腹いっぱい。
08/12/21 07:31:50 S9dMpMuF0
>>544
ありがとうございます。
きったないフィルタですがそう言って頂けるとやってる甲斐があります。
ところでオミトロンに詳しい方々にお聞きしたいのですが
(hoge|)\1test$TST(\1=?*)
このような時$TSTがtrueを返したら
ある文字列を返すみたいなのはどう書けばいいのでしょうか?
if文のようなものを書きたいのですが良く分かりません。
554:名無しさん@お腹いっぱい。
08/12/21 11:34:37 CDl70bdL0
condition が true なら flag = "true"
($TST(condition)$SET(flag=true)|)
condition が true なら flag = "true"、false なら flag = "false"
($TST(condition)$SET(flag=true)|$SET(flag=false))
555:名無しさん@お腹いっぱい。
08/12/21 13:07:44 epJI0pUF0
>>542
>このことから、「$SET(prx=) がグローバル変数の宣言処理となっていない」ことがうかがえます。
初心者がthink氏に意見するのは気が引けますが
空は$TSTできないので
Match = "$SET(prx=1)$SET(prx=)$TST(prx=*)$STOP()"
でも駄目だし、マッチさせるなら
Match = "$SET(prx=)(^$TST(prx=*))$STOP()"
だと思います。
556:名無しさん@お腹いっぱい。
08/12/21 14:39:56 3HwLxjnt0
>>555
いやいや、Matchさせることが目的じゃないよ。
nullが$TSTできない≒nullが$SETできない≒空$SETは変数宣言にはなっていないっていう話。
ただ>>542でthinkさんが心配している通り、問題を誤解してるかなーと思った。
thinkさんは>>516を「グローバル変数を使う前に変数宣言(兼初期化)しろ」という意味に
取ったみたいだけど、俺は>>545のように変数名の衝突を危惧して「初期化しろ」と言ったんじゃないかなと。
それなら>>545で現実的には解決、もしくはReplaceに条件分岐で解放処理を入れればいい。
ただそれだと「ゴミ拾い」という言葉の意味がよくわからないんだよな。
まぁ、>>516=ID:PdFDrgn00の投稿を見る限り…ねぇ。
557:名無しさん@お腹いっぱい。
08/12/21 14:41:47 ZzqEe8Sq0
いや、「マッチさせるなら」ってさ、
別に「マッチさせたい」んじゃなくて「マッチするか否かを見たい」んじゃね?
558:名無しさん@お腹いっぱい。
08/12/21 14:42:44 ZzqEe8Sq0
はいはい見事にかぶっちゃいましたよ、とorz
559:think ◆MM0nnAOCiQ
08/12/21 14:43:12 QiODl+0j0
>>553
> if文のようなものを書きたいのですが良く分かりません。
考え方としては、「$TST() がif文」でいいと思います。
true, falseの判定だけでいいなら、こんな感じです。
($TST(if=true)$SET(0=ifはtrueを返しました)|$SET(0=ifはfalseを返しました))
■(注意) ローカル変数を $TST() する場合
[Patterns]
Name = "local-val if [2008/12/21] test1"
Active = TRUE
Limit = 256
Match = "$SET(0=true)($TST(0=true)$SET(1=\\0はtrueを返しました)|$SET(1=\\0はfalseを返しました))$STOP()"
Replace = "\1"
ローカル変数を $SET() しても置換処理に移るまで初期化されないので、このタイミングでは $TST() に失敗してしまいます。
# "(hoge|)\1" のようにWeb上の文字列をキャプチャした場合は即時初期化されるので、上手く動作します。
[Patterns]
Name = "global-val if [2008/12/21] test1"
Active = TRUE
Limit = 256
Match = "$SET(if=true)($TST(if=true)$SET(0=ifはtrueを返しました)|$SET(0=ifはfalseを返しました))$STOP()"
Replace = "\0"
グローバル変数を $SET() すれば期待通りに動作します。
560:think ◆MM0nnAOCiQ
08/12/21 15:01:07 QiODl+0j0
>>555
既に指摘があるように、>542はグローバル変数が初期化されているか否かを確認するためのフィルタでした。
わかりにくくてすみません。
>556-557
フォローありがとうございます。
>>545,556
> 俺は>>545のように変数名の衝突を危惧して「初期化しろ」と言ったんじゃないかなと。
なるほど!
そういう風にも受け取れますね。合点がいきました。
> ただそれだと「ゴミ拾い」という言葉の意味がよくわからないんだよな。
「他のフィルタの変数の値 = ゴミ」→「他のフィルタの変数の値を拾う = ゴミ拾い」
ってことじゃないでしょうか…、おそらく。
561:名無しさん@お腹いっぱい。
08/12/21 17:42:47 S9dMpMuF0
>>554,559
ありがとうございます。
普通に()で括って書けば良かったんですね。
562:名無しさん@お腹いっぱい。
08/12/21 22:23:16 udR/vXI80
グローバル変数はフィルタがマッチしなかった場合でも変数への
代入は行われるので、関係無いスクリプトタグがHTMLソースの
上のほうにあった場合に以下略。
563:名無しさん@お腹いっぱい。
08/12/21 22:28:56 epJI0pUF0
555です。 ごめんなさい、言葉が足りませんでした。
>>556,557
>Matchさせることが目的じゃない
わかっています。
$TST(prx=*) か (^$TST(prx=*)) で
少なくとも実用上は期待通りの動作をさせられる
という意味で、付け足しました。
>>560
意図した通りには伝わらないものですね
言葉尻だけを浅い知識で解釈してごめんなさい。 orz
564:zgdXkjwvJnE
08/12/21 23:02:09 oS99OAak0
URLリンク(hideakizinovia150.gigazu.net) 砒瑣 粨蒟 璞瑣URLリンク(nobuabaddon967.gigazu.net) 砒瑣 粨蒟 璞瑣
565:QICFIJKp
08/12/22 01:00:27 2ane9rsh0
URLリンク(bentobaruch876.gigazu.net) 璞瑣 砒瑣 粨蒟URLリンク(adaoran23.gigazu.net) 璞瑣 砒瑣 粨蒟
566:名無しさん@お腹いっぱい。
08/12/22 01:29:03 XMj7yV430
レベル落ちたなぁ。 2003年前後の常連が復活してくれれば。。
567:名無しさん@お腹いっぱい。
08/12/22 07:16:25 YSQ75lhH0
これはこれは。レベルの高い常連さんっスか。スゲェっスね。(棒
568:名無しさん@お腹いっぱい。
08/12/22 08:22:15 KXNWeJis0
>>566
5年間も上達せずに乞食続けてんのかよ
569:名無しさん@お腹いっぱい。
08/12/22 08:37:42 I0tCQWOt0
吹いたwww
570:名無しさん@お腹いっぱい。
08/12/22 11:50:35 XMj7yV430
クレクレスレでクレクレして何が悪い
571:名無しさん@お腹いっぱい。
08/12/22 17:32:38 POMsfFfE0
だからと言ってフィルター製作者を蔑み叩く理由にはならない
5年も経ってるのにお前の人間的なレベルは上がってないのな
572:名無しさん@お腹いっぱい。
08/12/22 20:28:02 XMj7yV430
たいした知識もないのに偉そうなおまえらが悪い。
自分で作ったほうがマシなレベル。
573:名無しさん@お腹いっぱい。
08/12/22 21:44:16 zDNLL/zi0
今日はお薬多めに出しておきますね
574:名無しさん@お腹いっぱい。
08/12/22 22:42:31 SNok0v6o0
>>572
マー君、ちゃんとオムツして寝なさいね。
ママの言うこと聞かないと、またオシッコ漏らすわよ!
575:名無しさん@お腹いっぱい。
08/12/22 23:20:52 ur4icsVS0
まあ、例のいつもの人だから。
口では散々偉そうなこと言っておきながら、
自作のgoogle highlight(予定)では<b></b>に色つけて終わりで済ませてしまうような。
しかも誤魔化す為の小手先の仕込として外部へのリンクをつけた言う。
576:名無しさん@お腹いっぱい。
08/12/23 00:11:52 VaPrUbh10
なんでフィルター作ってくれないスレにしがみ付いてるの?マゾなの?
577:名無しさん@お腹いっぱい。
08/12/23 00:17:32 NMEHlIfT0
>>576
「気に入らないが他に頼れるものもないし仕方ないから使ってやるよ」
つかいい加減スルーするかアンカ付けてくれよ
578:名無しさん@お腹いっぱい。
08/12/23 00:17:40 Z3u2SfiO0
クリスマス前になると精神的に不安定になる奴が増えるからな…
察してやろうぜ
579:名無しさん@お腹いっぱい。
08/12/23 00:37:24 NMEHlIfT0
>>578
うっせー!バカバカまんこ!
580:名無しさん@お腹いっぱい。
08/12/23 07:32:05 vnuO8BoP0
ゴミ拾いの意味も理解出来ない人たちおはようございます。
581:名無しさん@お腹いっぱい。
08/12/23 16:24:11 15xz4RZI0
てs
582:名無しさん@お腹いっぱい。
08/12/23 21:08:30 kWQHS/OS0
URLリンク(goyaku.seesaa.net)
誰か左右のアマゾン広告取ってくれ
俺どうせ買わないからこんなに表示されてても重いだけで困るんだ
583:名無しさん@お腹いっぱい。
08/12/23 22:01:20 vnuO8BoP0
だが断る!
584:名無しさん@お腹いっぱい。
08/12/23 22:32:46 AY78PbbF0
>>582
[Patterns]
Name = ""
Active = TRUE
URL = "goyaku.seesaa.net/ $TYPE(htm)"
Limit = 80
Match = "(<div id="links-left")\#[^>]+>|"
"$NEST(<div class="sidetitle">,("
"[^<]++[%81][%95][%97][%7e][%82][%b5][%82][%a2][%95][%a8]|"
"amazon[^<]++TOP10$SET(\#=$STOP())"
"),</div>) (<div class="side")\#[^>]+>"
Replace = "\@ style="display:none">"
585:名無しさん@お腹いっぱい。
08/12/23 22:34:46 AY78PbbF0
>>582
ごめん変なことしちゃった。>>584インポートすると落ちるからこっち使ってね
[Patterns]
Active = TRUE
URL = "goyaku.seesaa.net/ $TYPE(htm)"
Limit = 80
Match = "(<div id="links-left")\#[^>]+>|"
"$NEST(<div class="sidetitle">,("
"[^<]++[%81][%95][%97][%7e][%82][%b5][%82][%a2][%95][%a8]|"
"amazon[^<]++TOP10$SET(\#=$STOP())"
"),</div>) (<div class="side")\#[^>]+>"
Replace = "\@ style="display:none">"
586:名無しさん@お腹いっぱい。
08/12/23 22:36:54 kWQHS/OS0
>>585
おー綺麗に消えてる
ありがとうございます
587:名無しさん@お腹いっぱい。
08/12/23 23:36:28 oCKcKdTH0
No object!!(似非NoScript)を更新しました。
URLリンク(proxo.hp.infoseek.co.jp)
変更内容
・document.createElement、document.write、document.writelnの誤爆してたのをさらに修正
・document.createElement、document.write、document.writelnで作られる
applet、bgsound、embed、objectをAllow_Extで管理するように
・体感差はほぼないがほんのり遅くなった
・ver.20081219で四角を右上に表示するように変更。従来どおり右下に表示したいときはテキストの159行目を参照のこと
588:名無しさん@お腹いっぱい。
08/12/24 00:06:39 sDyrBFS+0
gifアニメーションを止めるにチェック入れても
効かないの私だけでしょうか
589:cLtQcUidInUIHoJKK
08/12/24 06:09:05 GNwEizvp0
URLリンク(www.stanford.edu) my sitemap
590:名無しさん@お腹いっぱい。
08/12/24 07:18:56 63zKslkr0
FirefoxかOperaなら設定から止めるようにしたほうがいいと思うけど
591:ZQRBybUEZzzRhMeen
08/12/24 08:11:16 rf2k32570
URLリンク(www.stanford.edu) my sitemap
592:名無しさん@お腹いっぱい。
08/12/24 08:45:02 3feL9TEH0
Far East Patch for Proxomitron 4.5 "JUNE"
Proxomitron 4.5(2003-6-1)+6
** USE THIS MODIFIED VERSION AT YOUR OWN RISK! **
** この改造バージョンは各自の責任で使用して下さい **
┌── 重要な注意点 ──
│
│「Freeze GIF animation(GIF アニメーション停止)」機能が
│**全く** 効かなくなります。
│
│Proxomitron のウィンドウで「Freeze GIF animation」にチェックを入れようが
│$FILTER(true) を使おうが、GIF アニメを止めることは出来ません。
│
└────────
これだったら氏ね、そうじゃなかったらすまん
593:名無しさん@お腹いっぱい。
08/12/24 10:36:40 sDyrBFS+0
>>592
すいませんでした、思い出しました
594:某395
08/12/24 15:01:12 tdtpGodJ0
>>575
呼んだ?
595:名無しさん@お腹いっぱい。
08/12/24 18:43:58 bfpLFrO/0
+7で
│「GIF アニメーションを止める」機能を復活させました。ただし
|チェックが入っていると、GIF ファイルに対して $FILTER(true)
|を実行してもウェブページフィルタが効かなくなります。
となっているわけだが…
596:某395
08/12/24 18:57:36 tdtpGodJ0
チェック入ってても止まらないgifがいっぱいあるから使えない機能だぞこれ。
昔この機能の代わりにWEBフィルタで止めようとしてた奴がいたからそのフィルタ使ってみたら。
どこにあるのか知らないがな。
597:名無しさん@お腹いっぱい。
08/12/24 21:18:24 HwL0UHRZ0
wiki見ればgif止め効いてるヴァージョンが分かるはず
チカチカ動く広告とか鬱陶しいだけだから重宝してるよ
598:某395
08/12/24 23:56:22 tdtpGodJ0
最近はflash広告がうざい。
久しぶりにオミトロン関係のスレ覗いてみたがニコニコスレはなかなか活気があっていいな。
俺もwrapper作成に参戦しようかな〜
599:名無しさん@お腹いっぱい。
08/12/25 00:48:42 zKdY1JVO0
止まらないGIFのURLキボンヌ
600:名無しさん@お腹いっぱい。
08/12/25 01:09:08 +B7ulH7+0
著名なテストサイト
URLリンク(www.aiseikai.or.jp)
601:名無しさん@お腹いっぱい。
08/12/25 02:11:08 zKdY1JVO0
>>600
ありがとう。試してみたが確かに止まらないわw
っていうかスレ違いだったね、ごめんなさい。
602:名無しさん@お腹いっぱい。
08/12/25 02:18:16 IDm2Y/+V0
うそん +7アイコン偏光板で止まるぞ?
603:名無しさん@お腹いっぱい。
08/12/25 04:27:07 zKdY1JVO0
勘違いだった_| ̄|○ 愛生会止まりました。
寝不足じゃない時に調べて見ます。
604:名無しさん@お腹いっぱい。
08/12/25 05:18:13 OdK8gqid0
アクセスログの類をできるだけ排除したいんだけど
・明らかなログ採取用ドメインをブロック
・imgのsrcにcgiや?があったら例外を除いて削除
・高さと幅が0や1のimgをローカルファイルに置き換え
・cssファイル内のurl()を適当に削除(面倒だしインポ以外は全部消しちゃっても問題無い?)
この他に何かいいのないかな?
どうやってもこちらからは判断できない方法があるってのは分かってるが
実用に差し障りが無い範囲内でできるだけ排除する方向で。
605:名無しさん@お腹いっぱい。
08/12/25 08:56:00 rjTvXne/0
オフサイトのJavascriptを排除するってのもアリかもしれん
ブロックリストに漏れがあってもカバーできる
606:名無しさん@お腹いっぱい。
08/12/25 09:18:43 oF7FanGj0
cssファイル内の〜はbackground、backgound-imageで拡張子が画像ファイルじゃなかったら削除のほうがいいね
あとcgiだけじゃなくてphpのアクセス解析にも対応しないと
607:名無しさん@お腹いっぱい。
08/12/25 15:19:57 7J6LFBII0
NINJA TOOLS だけでも300あるけどね > ブロック候補ドメイン
URLリンク(www.ninja.co.jp)
608:名無しさん@お腹いっぱい。
08/12/25 16:33:29 iGUDLeGx0
楽にやりたいならNoScriptとかも使わないと無理だろな
フィルタのでも良いだろうけど
609:名無しさん@お腹いっぱい。
08/12/27 18:25:29 3wjk0hIz0
特定のサイトが連続アクセスするとエラーを出す様になりました。
タブで一度に10個以上開くとNG
数秒毎にクリックしていくと問題有りません(あまり早いとNG)
上記を回避出来るようなフィルターはProxomitronで可能ですか?
50個くらいを一気に開いて一つ一つ開く時に数秒おいて特定サイトにアクセスしてくれる様に。
よろしくお願いします。
610:名無しさん@お腹いっぱい。
08/12/27 19:10:14 dMgc7I4U0
もう嫌がらせにしか思えないw
611:名無しさん@お腹いっぱい。
08/12/27 19:43:30 T+M1cOed0
荒らしダメ絶対!
612:名無しさん@お腹いっぱい。
08/12/27 19:53:38 ZEBoUiGw0
嫌がらせにしか思えない>>607を親切なページに見せる
[Patterns]
Name = "NINJA domain getyou! 20081227"
Active = TRUE
URL = "www.ninja.co.jp/hp/pop_domain.html $TYPE(htm)"
Limit = 100
Match = "<table[^>]+$SET(#=<textarea cols="30" rows="20" readonly="readonly" onClick="this.select()")|"
" <(/|)tr> |"
" <td[^>]+>$SET(#=\[\^.\]\+.)([a-z0-9-]+.[a-z]+{1,4})\#[^<]+</td>$SET(#=\r\n)|"
"</table>$SET(#=</textarea>$STOP())"
Replace = "\@"
なんでLast-Modifiedヘッダ発行してないんだクソッ
613:604
08/12/27 21:37:46 Zt8SdVIN0
アドバイスThx!
>>605
JSはどうしても必要なサイトだけソースに目を通しつつ1つずつ許可してるからそれほど気にする必要はないかな。
>>606
ページ本体をphpで生成してるようなサイトは結局必要以上の環境変数を送らないようにするしかないか・・・。
>>607
いくつかは既にブロックしたりしてたがこんなにあったとは。
だけどNINJAがいるサイトを見てみたけど少なくとも確認したところでは
imgのsrc内の?を検出して殺しておけば該当ドメインへのアクセスは皆無っぽい。
614:609
08/12/28 07:27:40 UDJ/HzPm0
そう言われれば嵐や嫌がらせですね〜w
特定サイトとはブックオフオンラインです。
URLリンク(www.bookoffonline.co.jp)
毎日欲しい中古がないかブックマークを一気開くという作業してたので・・・
うーむ、Proxomitronではどうしようもないですかね〜
615:think ◆MM0nnAOCiQ
08/12/28 12:17:14 Tn4v68TX0
>>614
> うーむ、Proxomitronではどうしようもないですかね〜
JavaScriptの window.open と疑似Sleep処理(「sleep javascript」でGoogle検索してみてください) で実現できると思いますが、
そのフィルタを「公開」してしまうと「不特定多数が利用する→サーバが過負荷になる」
という状況が想定できるので誰も公開できないのではないかと…。
そういうフィルタは自分で作るか、親しい知人に作ってもらうなどしてこっそり使うものだと思います。
# 以下、脱線。
JavaScriptで低負荷なSleep処理を実現するアイデア。
1. iframeで <meta http-equiv="refresh" content="3;URL=sleep.html?page=hoge.html"> なHTMLをロード
2. JavaScriptで page=hoge.html を参照して処理を実行
3. JavaScriptでiframe生成
4. 1. に戻る (以下ループ)
local.ptron を利用してProxomitronと連携することが出来ると思います。
616:609
08/12/28 12:28:53 270ZtdQy0
>>615さま
なるほど、当方には無理だという事が分かりましたw
普通にクリックしていくことにします。
ありがとうございました。
617:名無しさん@お腹いっぱい。
08/12/28 12:33:03 jFUiBTAf0
>>616
開くページが決まってるなら、バッチファイルでスリープ入れながら開くとか。
618:名無しさん@お腹いっぱい。
08/12/28 12:46:48 xmayjd6T0
混雑時はステート403を返すみたいだから
403だったら時間をおいてリロードするようにすれば良いんじゃないかな。
619:名無しさん@お腹いっぱい。
08/12/28 13:49:49 ilN2ukZN0
そういえばテキスト置換ソフトを使う練習の際に>607の世話になったな。
>607からドメインだけ残してあとは削除。
そこに適宜コメントを加えてブロックリストに加えた。
[a-z0-9_]+.([a-z]+.|)$LST(ninja)/$TYPE(htm)
URLの絞り方はこんな風に。
$LST(ninja)から前の部分は現状で確認できる範囲だけにした。
620:名無しさん@お腹いっぱい。
08/12/28 14:52:27 HFNvH2tM0
>>614
wwwcかRSSで特定ページに新着(変化)があったら開くとかすればいいのに
621:名無しさん@お腹いっぱい。
08/12/28 15:10:49 jvNONNx00
それ以前にそこ入荷お知らせメールあるじゃん
622:名無しさん@お腹いっぱい。
08/12/29 00:58:05 ZWFk1FTd0
pixivの広告消しフィルターとかありますか?
623:名無しさん@お腹いっぱい。
08/12/29 14:00:03 +Kry/ODH0
本体は>1のを使ってれば間違いないんだよね?
624:名無しさん@お腹いっぱい。
08/12/29 14:10:43 +YsZrlgp0
>>622
さぁ?無いなら自分で作ってみたら?
>>623
うん
625:名無しさん@お腹いっぱい。
08/12/29 14:56:40 uoN2ks3Z0
pixivは結構いじり甲斐がありそうだな
ニコ並みにカスタマイズできるかも
626:名無しさん@お腹いっぱい。
08/12/31 13:17:34 qAyOlPfo0
<li id="post">hogehoge</li>
<li id="post">hogehoge</li>
<li id="post">hoge unko hoge</li>
<li id="post">hogehoge</li>
<li id="post">hogeho unko ge</li>
<li id="post">hogehoge</li>
で、unkoを含まないli部分を削除しようと
<li id="post">*(^unko)*</li>
としましたができません。
全部消えてしまいます。
(範囲マッチは<li id="post">*</li>です)
<li id="post">hoge unko hoge</li>
<li id="post">hogeho unko ge</li>
という結果にしたいのです。
どなたかアドバイスお願いいたします。
URLリンク(abc.s65.xrea.com)
のやり方で適用できそうなのは全て試しましたがダメでした。
627:某395
08/12/31 13:43:53 ZQfEfYVh0
(<li(^(^\s))[^>]++\sid=$AV(post)&$NEST(<li(\s[^>]+|)>,(^*unko)*,</li>))
<li(^(^\s))[^>]++\sid=$AV(post)[^>]+>((^unko|<).)+</li>
<li(^(^\s))[^>]++\sid=$AV(post)[^>]+>([^<]+&&(^*unko)*)</li>
どれでもおk。
628:某395
08/12/31 14:05:34 ZQfEfYVh0
↑真ん中の "." は "?" の間違い。
これが一番シンプルで分かり易いかな。
<li(^(^\s))[^>]++\sid=$AV(post)[^>]+>(^[^<]++unko)[^<]+</li>
(^123)???
↑これは "123" 以外の3文字にマッチする表現。
(^(^123))???
↑これは "123" にマッチする表現。
(^ ) の中の数字と "???" が同じ場所をそれぞれ1回ずつテストしている。
(^1)(^2)(^3)?
↑これは 1、2、3以外の一文字という意味になる。
629:某395
08/12/31 14:42:47 ZQfEfYVh0
木を付けなくてはいけないのが(^ )の前に*を置いたらいけないという点。
*(^unko)
の場合、後ろにunkoと続かない地点が一か所でもあればマッチしてしまう。
<li id="post">123unko</li>
というテキストがあったら、1の地点で *(^unko) までがマッチしてしまい、
その後ろは * なのでなんでもマッチしてしまう。
感覚的には
*(^unko)*
と書きたい場所では
(^*unko)*
にする。 カッコの中に最初の * を入れる、と覚えれば簡単な。
630:626
08/12/31 15:04:38 qAyOlPfo0
うひゃー!
すごすぎる。
ありがとうございます。
成功しました。
マッチングコマンドの知識が皆無だから勉強せねば…。
ちなみに
<li id="post(^*display_post_notes)*</li>
ですませちゃいました。
余談ですが、よく見ると
<li id="post7583
というように連番っぽくなってました。
一応参考までに。
Tumblrの自分がリブログしたやつ
URLリンク(www.tumblr.com)
の、ノートが付いてるものだけを表示するフィルタでした。
631:某395
08/12/31 15:29:09 ZQfEfYVh0
なるほどな。 否定マッチが苦手ならCSSで全<li>要素を"非表示"にして、
notesが付いた<li>要素だけオミトロンで"表示する"に戻す、という方法もある。
visibility:hidden; // 表示しない
visibility:visible !important; // 表示する
まあ、もう出来たんならいいか、ばいばい。
632:名無しさん@お腹いっぱい。
09/01/02 20:10:35 7uoMvOWo0
アマゾンの個別商品ページ(たとえば↓)
URLリンク(www.amazon.co.jp)
に、「&m=AN1VRQENFRJN5」という文字列を追加するフィルタを作って欲しい。
この文字列は何かって言うと、マーケットプレイスの値段よりAmazon.co.jpの値段を
優先して表示する文字列らしい。
マケプレは使わないので、常にAmazon.co.jpの値段優先にしたいんだ。
633:名無しさん@お腹いっぱい。
09/01/03 02:12:30 RyOuH/Jw0
>>632
それおまえのアフィだろ?
634:名無しさん@お腹いっぱい。
09/01/03 10:38:50 hUz6ReA00
>>633
ワロタw
635:632
09/01/03 14:57:30 q9lqTq+r0
ちょw
自分のアフィ踏むフィルタとか意味無いw
636:名無しさん@お腹いっぱい。
09/01/04 12:01:10 Z5Qh2SeG0
正規表現をた用スレ
ReplaceStr.txtを活用するスレ Part5
URLリンク(jane.s28.xrea.com)
637:名無しさん@お腹いっぱい。
09/01/04 15:40:47 Z5Qh2SeG0
>>1----------------------------------
638:名無しさん@お腹いっぱい。
09/01/04 15:42:06 Z5Qh2SeG0
誤爆すまそ
639:名無しさん@お腹いっぱい。
09/01/04 16:11:16 JoMYeTA70
>>638
許さん
640:名無しさん@お腹いっぱい。
09/01/04 23:57:26 b8fpOqI50
アニメーションPNGを停止させるフィルタを作ってみました。
再生できるブラウザは限られてる上に、アドオン等で対応したほうが高速かつ確実ですが、興味のある人はどうぞ。
URLリンク(f49.aaa.livedoor.jp)
リファラではじかれる場合は↓から。
URLリンク(f49.aaa.livedoor.jp)
641:名無しさん@お腹いっぱい。
09/01/05 18:51:14 Mwx5ba250
<CENTER><IMG WIDTH="300" HEIGHT="200" SRC="../ime/hoge.gif">
<H4>テストhogehoge
<FORM METHOD=POST ACTION="hoge.cgi" TARGET="test" >
<SELECT NAME="ACTION" >
<OPTION VALUE="test" selected >hoge
<OPTION VALUE="hoge" >hogehoge
</SELECT>
<INPUT TYPE="hidden" NAME="pwd" VALUE="ninnin">
</FORM>
上記HTMLの画像と文章とフォームの順番を逆にするフィルタで
No1とNo2があるんですがNo2フィルタが有効になりません。
テストウィンドウでは動作するのですが・・・。
//<h4>の閉じタグがないので補完するフィルタ
//<FORM〜が複数ある場合があるので補完しないとダメ
Name = "No1"
Active = TRUE
Multi = TRUE
URL = "www.hoge.jp/~hoge_hoge/"
Limit = 256
Match = "</CENTER><h4>\1<FORM"
Replace = "</CENTER><h4>\1</h4><FORM"
//順番を入れ替えるフィルタ
Name = "No2"
Active = TRUE
URL = "www.hoge.jp/~hoge_hoge/"
Limit = 2560
Match = "<CENTER><IMG WIDTH="300" HEIGHT="200" (\w)\1></CENTER>(<h4*/h4>)\2"
"(<FORM\w/FORM>)\#+\#<BR><HR>"
Replace = "\@<IMG WIDTH="300" HEIGHT="200" \1><BR>\2<HR>"
642:名無しさん@お腹いっぱい。
09/01/05 18:52:09 Mwx5ba250
画像
文章
フォーム
を
文章
フォーム
画像
に変更するフィルタ(のつもり)です。
643:名無しさん@お腹いっぱい。
09/01/05 21:21:15 BFt6s0aC0
■質問
次のページにあるリンクの URL を【置換後】のように変えたいのですが、
「マブラヴ オルタネイティヴ」まとめWiki - 2ch過去ログ のアップロードファイル一覧
URLリンク(www9.atwiki.jp)
【置換前】
URLリンク(www9.atwiki.jp)
【置換後】
URLリンク(www9.atwiki.jp)
↓のフィルタはどのように変えれば良いでしょうか?
フィルタは自作したことがなく、既存のフィルタを参考にして書きましたが
動きませんでした…。
お手数とは存じますが、よろしくお願いいたします。
[HTTP headers]
In = TRUE
Out = TRUE
Key = "MuvLuvALWikiLogsLinkURLShort"
Match = "page=2ch%E9%81%8E%E5%8E%BB%E3%83%AD%E3%82%B0"
Replace = "pageid=48"
644:名無しさん@お腹いっぱい。
09/01/05 23:05:17 Mwx5ba250
>>643
2chの後のは全部一緒なら決め打ちでいいのかな。
Match=page=2ch*\&file=
Replace=pageid=48\&file=\1
これでtestウィンドウでは動作したけど?
645:名無しさん@お腹いっぱい。
09/01/05 23:09:18 Mwx5ba250
>>644
あ。書いたのはWebページフィルタのほう・・・アレ・・・
646:名無しさん@お腹いっぱい。
09/01/05 23:19:22 Mwx5ba250
連でゴメン。>>643
ページに書いてある文字を置換するのに、なんでヘッダフィルタ使ってるの?
ヘッダフィルタは目に見えない所をフィルタするだけで、目に見える所の
フィルタはしないよ。
というわけでWebページフィルタに>>644を放り込んでみてください。
647:名無しさん@お腹いっぱい。
09/01/05 23:35:21 BFt6s0aC0
>>646
出来ました!
>ヘッダフィルタは目に見えない所をフィルタするだけで、目に見える所の
>フィルタはしないよ。
そうなんですね。こんな基本的なことも知らないで質問して申し訳ないです。
本当にありがとうございます。
>2chの後のは全部一緒なら決め打ちでいいのかな。
そうですね。↓のフィルタでも希望通りに動きました。
[Patterns]
Name = "MuvLuvALWikiLogsLinkURLShort"
Active = TRUE
Limit = 64
Match = "page=2ch%E9%81%8E%E5%8E%BB%E3%83%AD%E3%82%B0"
Replace = "pageid=48"
ありがとうございました!
Proxomitron って本当にすごいですね。感動しました
648:名無しさん@お腹いっぱい。
09/01/05 23:41:07 fHNn7pwK0
>>641-642
Matchで</CENTER>を使っているみたいだけど、例のHTMLに</CENTER>が無い
その時点でもう無理かと・・・
どこかのサイト(掲示板?)ぽいけど、>>643のように具体的に書いてくれないとミリ
その例ならやっつけで
Matchが(<IMG*>)\0(*</FORM>)\1
Replaceが\1\0
649:名無しさん@お腹いっぱい。
09/01/05 23:53:25 Mwx5ba250
>>648
>例のHTMLに</CENTER>が無い
ゴメン、ここに書くときに間違えました(んで今気づきました)
本当はあります。あるのに2番目のフィルタだけマッチしないんです。
引っかかっているのはどうやら
(<FORM\w/FORM>)\#+\#<BR><HR>
この部分がマッチできていない模様。
<FORM>〜</FORM>が「いくつあるかわからない」けど「二つ以上ある」のに
マッチさせたい。WIKIやHELPを見てこのように書いたのですが・・・
650:名無しさん@お腹いっぱい。
09/01/05 23:58:28 Mwx5ba250
例のHTML・・・書き直した方がいいかな・・・?
No1適用後のHTMLです。
<CENTER><IMG WIDTH="300" HEIGHT="200" SRC="../ime/hoge.gif"></CENTER>
<h4>テストhogehoge</h4>
<FORM METHOD=POST ACTION="hoge.cgi" TARGET="test" >
<SELECT NAME="ACTION" > <OPTION VALUE="test" selected >hoge
<OPTION VALUE="hoge" >hogehoge </SELECT>
<INPUT TYPE="hidden" NAME="pwd" VALUE="ninnin"></FORM>
<FORM METHOD=POST ACTION="hoge.cgi" TARGET="test" >
<SELECT NAME="ACTION" ><OPTION VALUE="test2" selected >hoge2
<OPTION VALUE="hoge2" >hogehog2e </SELECT>
<INPUT TYPE="hidden" NAME="pwd" VALUE="ninnin"></FORM>
651:名無しさん@お腹いっぱい。
09/01/06 00:14:28 chM6XXTZ0
<BR><HR>も例から抜けてるな・・・orz何度もすみませんorz
Matchから削っても変わらなかったですが。
652:名無しさん@お腹いっぱい。
09/01/06 00:23:49 chM6XXTZ0
>>648
自力解決断念。書いてくださったフィルタで十分でした。
ありがとうございました。
テストウィンドウでは動作するんだけどなぁ・・・orz
653:名無しさん@お腹いっぱい。
09/01/07 02:06:30 jCDaEcq30
てs
654:名無しさん@お腹いっぱい。
09/01/07 23:17:18 OuF3JxFi0
Name = "Futaba Ad Killer"
Active = TRUE
URL = "[^/]++.2chan.net/"
Limit = 2048
Match = "(広告:::<b>*</b>|<a\s[^>]++href=("|)http://(^[^/]++.2chan.net/)[^>]++> <img\s[^>]++> </a>"
"|<iframe\s[^>]++src=("|)http://(^[^/]++.2chan.net/)*</iframe>"
"|<object\s[^>]++>*http://(^[^/]++.2chan.net/)*</object>) (<br>|)"
これを使うとサムネイルが表示されなくなった・・・
655:名無しさん@お腹いっぱい。
09/01/08 22:16:05 +izuNcTa0
>>654
Name = "Futaba Ad Killer"
Active = TRUE
URL = "[^/]++.2chan.net/"
Limit = 2048
Match = "(広告:::<b>*</b>|<a\s[^>]++href=("|)http://(^[^/]++.2chan.net:81/)[^>]++> <img\s[^>]++> </a>"
"|<iframe\s[^>]++src=("|)http://(^[^/]++.2chan.net/)*</iframe>"
"|<object\s[^>]++>*http://(^[^/]++.2chan.net/)*</object>) (<br>|)"
最近のふたばは頻繁に変わるし板ごとに微妙に違ったりするからねえ
:81を足しただけだけど多分これで今は平気だと思う
656:名無しさん@お腹いっぱい。
09/01/09 00:01:09 SraD8dyT0
>655
ありがとうございました
動作確認しました
657:名無しさん@お腹いっぱい。
09/01/14 09:14:51 WQq9S7Oy0
Banner Replacerってフィルターがはてなブックマークに誤爆して、
はてなスターが2重になるんですけど、どなたか修正して下さいませんか?
658:fgrPNIYp
09/01/14 14:28:05 fYFLLYU/0
URLリンク(www.contrib.andrew.cmu.edu) woodbadge beads
659:jqMJflLItx
09/01/14 14:34:17 zvYMfJ0I0
URLリンク(www.contrib.andrew.cmu.edu) yahii
660:KnWOVNCKXZKvyCmwmX
09/01/14 14:50:10 3W4kn/450
URLリンク(www.contrib.andrew.cmu.edu) xv250 review
661:vEBEUotEblmldFd
09/01/14 15:30:09 cjughU8q0
URLリンク(www.contrib.andrew.cmu.edu) woodbadge beads
662:名無しさん@お腹いっぱい。
09/01/14 21:23:49 t4XwKbFX0
↓Thinking Archive(仮)という所で配布されていた広告カットフィルターなのですが、
<!-- 広告 -->や<!--==アフェリ===-->のように日本語のコメントで囲まれている
広告も消せるようには出来ませんでしょうか
[Patterns]
Name = "Kill nest ad [2006.03.27]"
Active = TRUE
URL = "$TYPE(htm)"
Limit = 8192
Match = "(<!-+[ ]+$LST(NestAd) -+>)\0*(<!-+[ ]+$TST(Nest1) ($TST(Nest2)|) -+>)\1"
"$SET(Nest1=)$SET(Nest2=)"
Replace = "\r\n\0\r\n"
"\r\n<!-- Killed nest ad -->\r\n"
"\r\n\1\r\n"
663:名無しさん@お腹いっぱい。
09/01/14 21:40:29 PV2zCLNu0
>>662
URLリンク(vird2002.s8.xrea.com)
664:名無しさん@お腹いっぱい。
09/01/15 18:01:43 oF1543lp0
<!--[if lt IE 7]>
<!-- No object!! External script -->
<meta http-equiv="imagetoolbar" content="no" />
<![endif]-->
これを
<div style="background-color: #80d5d5; width: 10px; height:10px; top: 35px; right: 5px; position: fixed; z-index: 9999;"></div>
<!--[if lt IE 7]>
<!-- No object!! External script -->
<meta http-equiv="imagetoolbar" content="no" />
<![endif]-->
にしたいのですがテストでは上記のようになるのに対し
実際にページを開くと一行目と二行目が逆になってしまうのですが
なぜだか分かる方いらっしゃいますでしょうか?
[Patterns]
Name = "No object!! sub [2009/01/15]"
Active = TRUE
URL = "$TYPE(htm)(^$KEYCHK(1))"
Limit = 1024
Match = "(<!--((^-->)?)++|)\1<!--\sNo\sobject!!\sExternal\s\2\s-->$STOP()"
Replace = "\r\n<div style="background-color: #80d5d5; width: 10px; height:10px; top: 35px; right: 5px; position: fixed; z-index: 9999;"></div>\r\n\1<!-- No object!! External \2 -->"
ページはWikipedia項目リンク
665:名無しさん@お腹いっぱい。
09/01/15 21:33:37 Rda4IV6x0
>>664
1行目と2行目が逆になるってことは(<!--((^-->)?)++|)\1が空にマッチしたってことでしょ。
テスト範囲以外のところに誤爆して半端に引っ掛かったりしないように書き換えれ。
俺には実際のページで該当部分が見つからんから自分で調べれ。
666:名無しさん@お腹いっぱい。
09/01/15 22:15:14 oF1543lp0
えぇ、まさしく空にマッチしてるようです
<!--((^-->)?)++<!--は
<!--[if lt IE 7]>
<!--
にマッチするはずなんですが、どうにもマッチしないんですよね
何でマッチしないのか分かりますか?書き方自体は間違ってはいないと思うのですが
667:名無しさん@お腹いっぱい。
09/01/15 22:29:43 eCZUflGh0
|)
668:think ◆MM0nnAOCiQ
09/01/15 23:19:55 mwSn6dQW0
>>666
>665氏も同じようですが、
Wikipedia項目リンク
に下記HTMLがないので、マッチしませんでした。
<!--[if lt IE 7]>
<!-- No object!! External script -->
<meta http-equiv="imagetoolbar" content="no" />
<![endif]-->
連携するためのフィルタ(MULTI付き?)が別にあるのでは…。
669:名無しさん@お腹いっぱい。
09/01/15 23:43:22 oF1543lp0
あ、すいません。書くの忘れてました。
上のサンプルはアップローダーにあるNo object!! Ext [2008/12/23]を
適用した後のものです。仰るとおりマルチ付です。
670:ISRTikkpgB
09/01/16 08:04:34 HPSTkd/H0
URLリンク(www.stanford.edu) my sitemap
671:GnIENbDgpvftGJ
09/01/16 08:52:45 DuXEcHzp0
URLリンク(www.stanford.edu) my sitemap
672:名無しさん@お腹いっぱい。
09/01/16 23:50:50 IS38VD1M0
Proxomitronの検索表現って、
文字列を最短一致でマッチさせる方法がかなり面倒だと思うんだけどどうなんだろう。
<!--
を始点にして
-->
を終点にする方法がわからない。
$NESTを使うと最長一致になり、バイト制限が影響する。
[^>]++を使うと <!-- > --> のような場合でマッチしなくなる。
673:某395
09/01/16 23:56:36 Kldnmfbm0
<!--*-->
674:名無しさん@お腹いっぱい。
09/01/17 00:00:50 2vhuf6FC0
ものぐさなら気を付けて*を使えばいいし
心配性なら?++-->とでもすればいいと思うんだけど
そうじゃなくて?
675:名無しさん@お腹いっぱい。
09/01/17 00:10:35 kLVGgKdD0
Name = "continuous break deleter for blog (2009.01.04)"
Active = TRUE
URL = "(^$KEYCHK(m))(d.hatena.ne.jp/|[a-z]+.g.hatena.ne.jp/|
!!!! [a-z0-9]+.blog[0-9]+.fc2.com/|[a-z0-9]+.exblog.jp/|[a-z0-9]+.sblo.jp/|
!!!! [a-z0-9-]+.cocolog-nifty.com/|[a-z0-9]+.blog.shinobi.jp/|[a-z0-9-]+.jugem.jp/|
!!!! [a-z0-9]+.seesaa.net/|yaplog.jp/|blog.[^/]+/)($TYPE(htm)|$TYPE(js))"
Limit = 64
Match = "((<br /+> )+{2,*}<br clear="all"> )|"
"(<br clear="all" />(<br /+> )+ $SET(1=<br class="continuous-break"/>))|"
"((<br /+> )+{2,*}$SET(1=<br class="continuous-break"/>))"
Replace = "\r\n<!-- continuous break deleted for blog -->\1\r\n"
/* continuous break deleter for blog (2008.10.24) */
.continuous-break { display: block; margin-bottom: 0.5em !important; }
676:名無しさん@お腹いっぱい。
09/01/17 00:11:15 kLVGgKdD0
Name = "continuous break deleter (2008.06.02)"
Active = TRUE
URL = "(^$KEYCHK(m))($TYPE(htm)|$TYPE(js))"
Limit = 192
Match = "((</+br[^>]+> "
"([%81][%40] |[%A1][%A1] |[%E3][%80][%80] |. |\ |(^$KEYCHK(p))</+script[^>]+> |</+font[^>]+> |<spacer[^>]+> |<!-- (^tok2|St-HP-F)[^>]++ --> |(</(^br|html|body)[a-z]+> )\#)+"
")+{5,*})|"
"((</+br[^>]+> "
"([%81][%40] |[%A1][%A1] |[%E3][%80][%80] |. |\ |(^$KEYCHK(p))</+script[^>]+> |</+font[^>]+> |<spacer[^>]+> |<!-- (^tok2|St-HP-F)[^>]++ --> |(</(^br|html|body)[a-z]+> )\#)+"
")+{3,4}$SET(1=<br /><br />))"
Replace = "\r\n<!-- continuous break deleted -->\1\r\n\@"
677:名無しさん@お腹いっぱい。
09/01/17 00:35:04 kLVGgKdD0
やっぱり目的を書かないと見当がつけにくいな。すまない。
重複する<br>を削除するフィルタを書くのが目的。
>675-676は製作途中のもので、>675は>676を元にして書き直してみたもの。
軽量化を兼ねた実験でブログ向けに絞ってみた。
>675はURLマッチの行が長過ぎと言われたので、複数行に分けて頭に「!!!! 」をつけた。
フィルタの製作方針は次の通り。
・<br>だけでなく、<br />や<br clear="all">などにもマッチさせる。
・<br>の直後にごみが混じっていたらそれも削除。
連続した<br>の間に全角空白・ ・ピリオドなどが混じっている場合に有効。
・<br><!-- comment --><br>などの場合も重複brだが、コメントはできれば残したい。
・<br><script></script><br>なども重複brだが、このへんをどうするかは再検討する。
>675-676の欠点は、一部マッチしない表現があること。
(条件)+{回数}のところが原因だと思っているのでそこを改善したい。
改善できたら>675-676のようにフィルタを分ける必要もなくなるだろう。
>673はさっき実験してみたけど思い通りの結果にはならなかった。
>674をざっと試してみると思い通りの結果になった。もっとやってみる。
678:名無しさん@お腹いっぱい。
09/01/17 00:44:17 i6deXSYV0
<br(/|)>の連続を消したいだけならCSSでこんなのもあるよ
br {
display: block !important;
line-height: 0px !important;
}
679:名無しさん@お腹いっぱい。
09/01/17 01:05:48 kLVGgKdD0
URLリンク(mayokara.info)
URLリンク(d.hatena.ne.jp)
URLリンク(d.hatena.ne.jp)
参考。br + br { display: none; } は誰もが通る道なのか。
>678の場合は、brの数に関係なく改行がひとつしかないように見えてしまう。
その結果、<br><br>を段落の区切りとして使っている文書を読むと、
段落の区切りがどこかわからなくなってしまう。
margin-bottom: 0.5em !important;
を足すとわかるようにはなるけど、行間が空きすぎて読みにくい。
次ページ最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
5137日前に更新/297 KB
担当:undef