トップページphp
13コメント2KB

【Web】 掲示板AA撲滅 【Prog】

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん03/02/12 15:46ID:???
頑張ってAAかどうか判定するソースを書こうじゃないか!

PerlかPHPとか一般的なやつで。
0002nobodyさん03/02/12 15:54ID:???
>>1
で、取りあえずお前が考えたアルゴリズムを聞きたい。

  ∩∩
 (゜x゜ )○
0003103/02/12 17:25ID:???
Perl

/[\s:;]{10,}/
マッチしたらAAっていうのは?
0004nobodyさん03/02/12 17:31ID:???
>>3
>>2のかわいいむぅタンが消えないが。

むぅ?

  ∩∩
 (゜x゜ )○
0005nobodyさん03/02/12 22:01ID:???
m/(?:\n(?: | )+[^\n]+){2,}/
0006nobodyさん03/02/12 22:27ID:???
まず、アスキーアートと日本語の文章の違いとして、
同じ文字やパターンが数多く繰り返されることがあると思うが、どうよ。
そういうところから考えると解けるようなきが汁。

あとは辞書ファイルでやるのが妥当かと……
0007nobodyさん03/02/12 23:07ID:???

@kigo=("\","~","∧","Д","д","´","`","ゝ","⊂","≡","⌒","▼","≧");
foreach(@kigo){
if ($com=~/.*$_.*$_.*$_.*$_/){$com="(AA省略/<a href=\"..\/..\/res.cgi?$two$three$datprint2\">見る</a>)";}
}
0008nobodyさん03/02/13 00:20ID:???
なんでも、すゝきさん所の次男坊が風邪引いたらしいぞ。
0009nobodyさん03/02/13 11:55ID:Ut9Jca7L
>>7
って重そうなんだが、
どれが軽いんだろ
0010nobodyさん03/02/13 18:53ID:???
多分、そんな風にやりたいなら、、記号リストの中にあるもので、
合計5個以上マッチしたらAAっていうのにするべきだね。

つまり、

my $count = 0;
my $flag;
foreach (@kigo) {
 $count += $com =~ /\Q$_\E/;
 if ($count >= 5) {
  $flag = 1;
  last;
 }
}
if ($flag) {
 #AAでした。
}
0011nobodyさん03/02/13 21:48ID:vY+9+m5g
顔文字も消えるよ
0012nobodyさん03/02/13 21:58ID:???
>>11
その辺は文字数を見ればなんとかなるんじゃないか?
00131203/02/13 22:08ID:???
もちろんAAだと認識した文字列の文字数だよ
とりあえず顔文字なら普通は改行ははいらないな
■ このスレッドは過去ログ倉庫に格納されています