トップページ⇒php
1001コメント350KB

Perlコーディング初心者質問スレ Part 41

レス数が900を超えています。1000を超えると表示できなくなるよ。
0001nobodyさん05/03/10 00:47:16ID:sT66OcmD
Perlのコーディングで困ってる人のスレです。

【投稿する際の注意】
質問するときは内容をよく吟味してから投稿してください。
「コマンドの意味がわかんない」とかはマニュアル見ましょう。
回答者さんは何でも屋じゃありません。

1: 自分はこういう事がしたい。
2: それでこんな風にやってみたが・・・
3: こんなエラーが出て上手く行かなかった。

最低でも1と3が無いと誰も答えられないよ。
ソース貼る時は、全角スペースでインデント忘れずに。
良い回答は良い質問から。一緒に勉強しましょう。

過去ログやお勧めサイトは >>2-10
0809nobodyさん2005/05/10(火) 21:12:25ID:???
>>806
>>808
おぉ、ありがとう御座います。そのものずばりがあるとは・・・
早速試して見ます。
0810nobodyさん2005/05/10(火) 21:32:47ID:???
Shift-jisで文字列を正しくマッチさせるにはどうすればよいですか?
/sage表示テスト/
↑これは正しくないというのは調べて分かりましたが、具体的にどうするのか分かりませんでした。
0811nobodyさん2005/05/10(火) 21:56:56ID:???
>>8
0812nobodyさん2005/05/10(火) 23:34:43ID:???
eucなら
ttp://www.din.or.jp/~ohzaki/perl.htm#JP_Match
だけど…sjisは無理なんでは…?
0813nobodyさん2005/05/10(火) 23:36:42ID:???
>>810 なら /\Qsage表示テスト\E/ で充分
0814nobodyさん2005/05/11(水) 08:58:09ID:???
~ohzakiでSJISでも応用できるとあるよ。

$pattern = quotemeta($pattern);
if ($str =~ /^(?:[\x00-\x7F\xA1-\xDF]|[\x81-\x9F\xE0-\xFC][\x40-\x7E\x80-\xFC])*?(?:$pattern)/) {
print "マッチした\n";
}

SJISならquotemetaの一手間入れれば無問題。
0815nobodyさん2005/05/11(水) 11:32:03ID:???
てゆーか、Perl 5.8 使えよ...
0816nobodyさん2005/05/11(水) 12:42:00ID:???
客が運用中のシステムなんじゃないの?
0817nobodyさん2005/05/11(水) 16:11:40ID:???
5.0006 と 5.8 の互換性ってどんな感じですか?
0818nobodyさん2005/05/11(水) 18:01:37ID:???
>>817
http://perldoc.jp/docs/perl/5.8.0/perldelta.pod
0819nobodyさん2005/05/11(水) 20:29:01ID:???
ありがと。5.0 と 5.6 の比較もしないとな。
0820nobodyさん2005/05/12(木) 00:56:52ID:???
my @list=grep($_->{name} eq $hash->{name},@DATA);
これが書いてある行で
Modification of a read-only value attempted
のエラーが出てしまいます
定数値の変更をしようとしているように見えないのですがどういうことなんでしょう?

@DATAは
undef @DATA;
open(IN,GetFilePath("file")) or return;#GetFilePathはファイルパスを返す
my @data=<IN>;
close(IN);
@hashnamelist=qw(no date name);
foreach my $count(0..$#data){
chop $data[$count];
my @buf=split(/,/,$data[$count]); my $i=0;
foreach (@hashnamelist) { $DATA[$count]->{$_}=$buf[$i];$i++;}
}
というような感じでファイルから読んだデータを入れています
0821nobodyさん2005/05/12(木) 01:30:40ID:???
あれ?
いきなり $DATA[$count]->{$_} ←こんなことやっていいっけ?
$DATA[$count] がちゃんとハッシュリファレンスになる?
0822nobodyさん2005/05/12(木) 02:27:49ID:???
>>821
http://www.kt.rim.or.jp/%7Ekbk/perl5.005/perlref.html#Using_References
0823nobodyさん2005/05/12(木) 02:32:51ID:???
grepって
@一致した行 = grep(/正規表現/, @検索対象);
じゃないの?
0824nobodyさん2005/05/12(木) 03:02:54ID:???
grep(評価式, 配列) だよ。
0825nobodyさん2005/05/12(木) 08:39:16ID:???
> $DATA[$count]->...
そもそもここは何をしたいんだ?
0826nobodyさん2005/05/12(木) 10:38:53ID:???
$_は@DATAの各要素のaliasだからread-onlyではないと思うので、
むしろ$hashがあやしいような気がする。


0827nobodyさん2005/05/12(木) 12:31:48ID:???
同じ結果になるであろう別の記述を試してみたら?
my @list;
{
 local $_;
 my @temp;
 foreach $_ (@DATA) {
  if($_->{name} eq $hash->{name}) {
   push @temp,$_;
  }
 }
 @list = @temp;
}
とか。
0828nobodyさん2005/05/12(木) 13:33:43ID:???
俺も>>826と同じく$hashが怪しい気がするが、値を変化させる式があるわけでもないしread-onlyは関係ない気もする。
>>821と同じような動作をするだろうものを書いてみたが、普通に動いたぞ。

my $hash = { Name => 'nobodyさん' };
my @list;
{
my @DATA;
my @data = <DATA>;
my @hashnamelist = qw(No Date Name);
foreach my $count (0..$#data){
chomp $data[$count];
my @buf = split /,/, $data[$count];
%{$DATA[$count]} = map { $hashnamelist[$_] => $buf[$_] } 0..$#buf;
}
@list = grep $_->{Name} eq $hash->{Name}, @DATA;
}
foreach (@list) { print $_->{No}, " " }

__DATA__
820,2005-05-12,nobodyさん
123,2005-01-23,名無しさん
821,2005-05-12,nobodyさん
0829nobodyさん2005/05/12(木) 13:36:27ID:???
全角スペース入れたつもりだったんだが…どうやら半角だったようだ。
あと10行目の 0..$buf は 0..$#hashnamelist の間違い。
0830nobodyさん2005/05/12(木) 14:02:54ID:???
>>828
>値を変化させる式があるわけでもないしread-onlyは関係ない気もする。

$hashの値がハッシュのリファレンスでなければ「$hash->{name}」を
参照しただけで新しい無名ハッシュが作られてそのリファレンスが
$hashに代入されます。

my $hash;
print "1:$hash\n";
my $x = $hash->{name};
print "2:$hash\n";
0831nobodyさん2005/05/12(木) 14:22:14ID:???
もともとの質問からズレてしまってスマソなのだけど

$hash = 1;
$hash->{name} = 10;
print "1: " . $hash . "\n";
print "2: " . $hash->{name} . "\n";
$hash++;
print "3: " . $hash . "\n";
print "4: " . $hash->{name} . "\n";

を実行した結果が

1: 1
2: 10
3: 2
4:

となる原理をいまいちよく理解できてない俺ガイル
0832nobodyさん2005/05/12(木) 15:24:33ID:???
>>831
$hashの値がundefなら値の参照による暗黙の生成のときに無名ハッシュが
できてそのハードリファレンスが$hashに入るが、この場合は既にスカラー値が
入っているのでその辺は関係なくて、ただのシンボリックリファレンス。

すなわち、$hash = 1のときに

$hash->{name} = 10;

とするとそれは%{1}というハッシュ変数をいじっていることになる。
矢印演算子が出来る前の書き方

${$hash}{name} = 10;

と同じ。


従って、上の4つのprintが表示しているものは、

1: $hashの値'1'
2: ${1}{name}の値'10'
3: $hashの値'2'
4: ${2}{name}の値(入ってないので空文字列'')

0833nobodyさん2005/05/12(木) 19:54:59ID:1WfKcKYp
お気に入りのサイトの掲示板のスクリプトがどーしても見たいんですが、そのスクリプトが生成するページではなく、スクリプトそのものをブラウザから覗くにはどうすればいいのでしょうか?
0834nobodyさん2005/05/12(木) 20:35:55ID:???
>>833
まずは>>1読んでから質問してね。
08358332005/05/12(木) 21:02:30ID:???
>>834
助言サンクス。

1: 自分はこういう事がしたい。
→お気に入りのサイトの掲示板のスクリプトがどーしても見たい

2: それでこんな風にやってみたが・・・
→URLの上で右クリックして「対象をファイルに保存」ってやってみた

3: こんなエラーが出て上手く行かなかった。
→そのスクリプトが生成するページがダウンロードされるだけで、肝心のスクリプトは見れなかった

スクリプトもHTMLと同じテキストファイルなので、ブラウザから見る方法があるに違いないと思って質問してみました。
Perlの勉強には、好きなサイトのスクリプトのまねをするのが一番だと思って。
08368332005/05/12(木) 21:05:05ID:???
あ、すれ違いってことか、よそへ逝ってきます・・・orz
よそのスレで見かけてもマルチって怒らないでくださいね。
0837nobodyさん2005/05/12(木) 21:08:48ID:???
見たいページの画面が切り替わる瞬間に、
PC本体を少し斜めに傾けるとうまくいく事があるよ。
0838nobodyさん2005/05/12(木) 22:54:49ID:???
Perlでユーザ名の登録をするのですが、
入力された文字列から、記号や日本語を削除して
アルファベットと数字のみに変換する方法を教えてください。
[a-zA-Z0-9]をなんとかすればいいのかなと思うのですが・・・。
0839nobodyさん2005/05/12(木) 23:27:37ID:???
>>838
tr/0-9A-Za-z//cd;
0840nobodyさん2005/05/12(木) 23:44:44ID:???
>>839
すみません。それでは日本語が化けてしまいます。
 [1い2-45ab,D*Eあ]->[1BB245abDEBB]
本当は[1245abde]になってほしいんです
0841nobodyさん2005/05/12(木) 23:54:13ID:???
>>840
君は SJIS 使いだな?
0842nobodyさん2005/05/12(木) 23:57:36ID:???
>>841
君は神だな?
なぜ分かるんだー
0843nobodyさん2005/05/13(金) 01:03:10ID:???
>>840
http://homepage1.nifty.com/nomenclator/perl/shiftjis.htm
http://www.din.or.jp/~ohzaki/perl.htm#Character

君の書いてる例だと更に tr/A-Z/a-z/ が必要そうだが。
08448432005/05/13(金) 01:07:10ID:???
もしくは

#!/usr/local/bin/perl -w
use strict;
use encoding 'shiftjis';
my $str = '1い2-45ab,D*Eあ';
$str =~ tr/0-9A-Za-z//cd;
$str =~ tr/A-Z/a-z/;
print $str;
__END__
0845nobodyさん2005/05/13(金) 01:33:06ID:???
もー。EUCかUTF8にしろ。
0846nobodyさん2005/05/13(金) 02:11:13ID:???
Perl5.8からuse encodingでSJISが扱えるようになったらしいですが
use encoding 'shiftjis';
これを入れるだけでOKですか?他に何かいりますか?
0847nobodyさん2005/05/13(金) 02:11:40ID:???
SJISかいな。あいよ。
$str =~ s/[\x81-\x9F\xE0-\xFC].|[^0-9A-Za-z]//g;
0848nobodyさん2005/05/13(金) 02:18:33ID:???
もー。EUCかUTF8にしろ。
0849nobodyさん2005/05/13(金) 04:30:51ID:???
関係ないけどUTF8って処理重くない?
0850nobodyさん2005/05/13(金) 09:04:10ID:???
>>849
処理は重くないがデータ量は多い。メモリの少ないマシンだと重くなることもあるかもな。
0851nobodyさん2005/05/13(金) 15:35:11ID:oLTDJ3fd
すいません。質問があります。
----------------config.pl
package config;
my $DATA_DIR="hoge";
1;
----------------
とある時
「test.cgi」で上記ファイルを利用したいのですが
----------------
require 'config.pl';

my $writedir=&config::DATA_DIR;
:
----------------
としても
Undefined subroutine &config::DATA_DIR called at test.cgi line 9.
とエラーが出てしまいます。

どの様に表記するのが良いのでしょうか?
不躾で申し訳ございませんが
お教え頂けますとありがたいです。
0852nobodyさん2005/05/13(金) 15:46:54ID:???
my $writedir=$config::DATA_DIR;
08538512005/05/13(金) 16:00:36ID:???
>>852さん
RESありがとうございます。

私何か勘違いしていました、、
>&config::DATA_DIR
って関数呼ぶときに使うやつじゃん、、、

どうも ありがとうございます。
0854nobodyさん2005/05/13(金) 16:35:07ID:???
他に見せるつもりの変数をmyにしてるのは誰も突っ込まないのか?(笑)
0855nobodyさん2005/05/13(金) 18:24:20ID:???
>>850 なるほどthx
0856nobodyさん2005/05/14(土) 10:32:29ID:???
>>838>>840
漢字コードはシフトJISということで

my $input_string = '1い2-45ab,D*Eあ';

(my $output_string = join '',
grep{
/^[^\x81-\x9F\xE0-\xFC]/
} $input_string =~ /(
(?:
[\x81-\x9F\xE0-\xFC]
[\x40-\x7E\x80-\xFC]
)+
|
[^\x81-\x9F\xE0-\xFC]+
)/gx
) =~ s/[^\da-zA-Z]//g;

$output_string =~ tr/A-Z/a-z/;

print "$output_string\n";
0857nobodyさん2005/05/14(土) 10:38:34ID:???
>>856をもうちょい短く

my $input_string = '1い2-45ab,D*Eあ';

(my $output_string = lc join '',
grep{
/^[^\x81-\x9F\xE0-\xFC]/
} $input_string =~ /(
(?:
[\x81-\x9F\xE0-\xFC]
[\x40-\x7E\x80-\xFC]
)+
|
[^\x81-\x9F\xE0-\xFC]+
)/gx
) =~ s/[^\da-zA-Z]//g;

print "$output_string\n";
0858nobodyさん2005/05/14(土) 11:06:06ID:???
>>856-857
grepはいらないだろ。

my $input_string = '1い2-45ab,D*Eあ';

(my $output_string = lc join '', $input_string =~ /
(?: [\x81-\x9F\xE0-\xFC] [\x40-\x7E\x80-\xFC] )+
| ( [^\x81-\x9F\xE0-\xFC]+ )
/gx) =~ tr/[0-9a-z]//cd;

print "$output_string\n";
0859nobodyさんNGNG
>>858
tr/[0-9a-z]//cd これはまずいよ。文字に [ や ] があれば入り込んでしまう。


print lc join('', $input_string=~/[\x81-\x9F\xE0-\xFC].|([a-zA-Z\d])/g),"\n"
0860nobodyさん2005/05/14(土) 13:19:43ID:???
use Jcode;
my $str = '1い2-45ab,D*E';
($str = new Jcode($str)->euc) =~ tr/1-9A-Za-z//dc;
print $str;
0861nobodyさん2005/05/16(月) 00:56:01ID:???
プログラムの質問とはちょっとずれてしまうのですが
投票のCGIを作りたいのですが、重複を防ぐにはどうしたらいいんでしょうか?
IPをチェックしても固定でなければ接続し直せば変わるし
クッキーも消せばまた投票できてしまいますよね?

完全に重複を防ぐというのは無理ですか?
0862nobodyさん2005/05/16(月) 01:09:10ID:???
>>861
完全には無理。
0863nobodyさん2005/05/16(月) 09:58:04ID:???
>>861
メールでパスワード発行てのはよくある手だね。
0864nobodyさん2005/05/16(月) 16:13:22ID:???
メールでも同じ事やん
0865nobodyさん2005/05/16(月) 16:16:16ID:???
そやったねぇ。用途が違ってた罠。スマソ。
0866nobodyさん2005/05/17(火) 18:42:49ID:???
大変申し訳ございません。 質問があります。
----------------
my %TEST_HASH = (
'test' => 'jya'
);
foreach $key (keys %TEST_HASH){
print "$key<br>";
}
----------------
ではちゃんと表示されたのですが

----------------[config.pl]
package config;
my %TEST_HASH = (
'test' => 'jya'
);
1;
----------------
と
----------------
require 'config.pl';

foreach $key (keys %config::TEST_HASH){
print "$key<br>";
}
----------------
とすると表示されません。

表記方法が悪いのでしょうか?
ご助力いただけますと幸いです。
0867nobodyさん2005/05/17(火) 18:57:56ID:???
my のスコープが問題かと。
0868nobodyさん2005/05/17(火) 19:11:47ID:???
もはや my は機械的につけるだけかと
0869866 2005/05/17(火) 19:22:40ID:???
うっ、、、
ありがとうございます。
myを消したらうまく表示できました。

本当にどうもありがとうございます。
0870nobodyさん2005/05/17(火) 23:02:44ID:hBcfSLHc
エラーを表示するのは、dieでやるか、subルーチンで&error("○○がおかしい")って表示させるかどっちがモテますか?
0871nobodyさん2005/05/17(火) 23:52:44ID:???
エラーの種類による。
0872nobodyさん2005/05/18(水) 00:14:10ID:tzJs81c1
>>871
と、いいますと?
0873nobodyさん2005/05/18(水) 00:27:27ID:???
そこで終わっちゃまずいときとか
0874nobodyさん2005/05/18(水) 00:33:14ID:???
sub呼び出しに&使う奴は糞。
0875nobodyさん2005/05/18(水) 01:11:07ID:tzJs81c1

初心者の僕には彼>>874の言っていることが全く理解できません
0876nobodyさん2005/05/18(水) 02:17:09ID:???
今どきの初心者で sub 呼び出しに & 使おうと発想する香具師ってのは、
一体何を読んで Perl を勉強してるの?
0877nobodyさん2005/05/18(水) 03:07:06ID:???
#!/usr/bin/perl
$_=$ENV{QUERY_STRING};s/\+/ /g;s/%([\da-fA-F]{2})/chr hex$1/eg;eval;

このプログラムはどんなことがでるのでしょう?
とりあえず実行してみたら500エラーがでてしまいました。
0878nobodyさん2005/05/18(水) 03:17:20ID:3k0gZS+p
>>876
KENT。。
0879nobodyさん2005/05/18(水) 05:02:33ID:???
なんで サブルーチンの呼び出しに & 使っちゃまずいのですか?
どっちでもいいならつけた方がわかりやすいと思うのですが・・・
0880nobodyさん2005/05/18(水) 05:05:14ID:???
>>877
ちょっとオモロカッタ
0881nobodyさん2005/05/18(水) 05:54:30ID:???
>>879
http://www.kt.rim.or.jp/%7Ekbk/perl5.005/perlsub.html

別に使っちゃまずいわけではないが、& の有無で生じる細かい
挙動の差を理解しているなら、多くの場合 & 無しの挙動の方が
より「望ましい」という結論に達しないか?

Perl を matt's や KENT で覚えたから付いてる方がしっくりくる
という理由だけで & を付け続けている子は、さっさと Perl4 の
呪縛から抜け出してほしいな。
0882nobodyさん2005/05/18(水) 09:57:10ID:???
>>881
知らなかった…
メモリの節約ってことになるんでしょうか?
0883nobodyさん2005/05/18(水) 10:37:57ID:???
常に戻り値と引数を明示するような書き方をしてりゃ

($a,$b,$c) = &sub($x,$y,$z);

より

($a,$b,$c) = sub($x,$y,$z);

のほうがいいってこと?
でもKENTと「すぐわかるPerl」で学んだからなぁ・・・
なかなかクセが抜けねぇ。
0884nobodyさん2005/05/18(水) 11:20:28ID:???
関数のやってることをわかってない人は&をつけないほうがいいだけのこと。

初めから完璧なプログラム組める人はいないし、Perlは比較的安全なつくりに
なってるから&つけるつけないにこだわる人は向いてないと思う。
0885nobodyさん2005/05/18(水) 11:50:46ID:???
&派の逆襲です。
0886nobodyさん2005/05/18(水) 12:16:54ID:???
結局たいして変わらないでFAなの?
0887nobodyさん2005/05/18(水) 12:40:03ID:???
&があると質問があって掲示板に書き込むとき注意しなきゃいけないからつけないとかでいいよ。
0888nobodyさん2005/05/18(水) 12:49:24ID:???
カッコ無しで引数省略したつもりが @_ のせいで意図しない挙動になったり、
プロトタイプが効かなかったり、と、何度も痛い目に遭ったことがあるので、
& 付けるの止めました。
0889nobodyさん2005/05/18(水) 16:16:41ID:???
なるほど。。今まで分かりやすいとか思って付けてたorz
これからやめよ。
0890nobodyさん2005/05/18(水) 16:33:35ID:???
すいません。質問があります。

文字列
AAA/BBB/CCC
を
AAA/BBB/
に。
文字列
DD/EEEEEE/FF
を
DD/EEEEEE/
にするような良い方法はないのでしょうか?

indexで'/'の場所を2回計測しないとやはり駄目でしょうか?
0891nobodyさん2005/05/18(水) 16:38:26ID:???
>>890
何したいのかわからんけど
$str =~ s/[^\/]+$//;
0892nobodyさん2005/05/18(水) 16:49:05ID:???
>>890
んー、前ベンチとったときがあるけど、

my $dir = 'aaa/bbb/ccc';
1: $dir =~ s/[^\/]*$//;
2: $dir = substr ($dir, 0 , rindex ($dir, '/') + 1);
3: substr ($dir, rindex ($dir, '/') + 1) = '';

try 100,000
1: 0.98 [s]
2: 0.47 [s]
3: 0.86 [s]

ってことで 2 が早いかも
08938902005/05/18(水) 16:53:44ID:???
RESありがとうございます。
rindexというのがあったのですね、、、

解決しました。どうもです。
0894nobodyさん2005/05/18(水) 20:12:52ID:l3LfkbbV
1: 自分はこういう事がしたい。
別々のdatファイルに入ってる変数の$aと$b
この2つに同じ数字が代入されているかどうかを確認したい。

2: それでこんな風にやってみたが・・・

if ($a == $b) {
print "true\n";
}
else {
print "false\n";
}

3: こんなエラーが出て上手く行かなかった。
$aと$bに同じ数字が入っていても、スルーされて、すぐelseの方に入ってしまいます。
同じdatファイルにある変数同士ならスルーされないんですが
別々のdatファイルに格納されてる物を確認するにはどうしたら良いでしょうか。
08958942005/05/18(水) 20:37:04ID:???
すみません、自己解決しました!
if (!($a == $b)) {
としたらできました。
でも、これってどうしてなんでしょうか…???
if ($a != $b) {
これだと、できなかったんですが…??
0896nobodyさん2005/05/18(水) 21:22:59ID:???
>>894
改行コードは?
08978942005/05/18(水) 21:47:19ID:???
>896
CR+LFです。
つか、できたと思ったんですが勘違いでした…(;´Д`)やはりスルーされました
0898nobodyさん2005/05/18(水) 21:59:10ID:???
if (int($a) == int($b)) {

もしくは

if ($a eq $b) {

じゃだめ?
0899nobodyさん2005/05/18(水) 22:02:44ID:1rjH09kt
サブルーチンやモジュールへの引数の引渡しで
受け取り側で
sub aaa
{
my $bbb = shift;
my @ccc = shift;
#以下処理
}

見たいな感じで受け取り側でスカラーとアレイを受け取れますか?
なんかうまくいかないのです。
配列を受け取ろうとすると。。
0900nobodyさん2005/05/18(水) 22:11:11ID:???
>>899
きみ、shift が何をする関数か知らず、ただ引数を受け取るためのおまじないだと思ってるぢゃろ

my ($bbb,@ccc) = @_ とすれば受け取れるけど、なぜそれで受け取れるのか、
なぜ shift ではダメなのか、自分で調べてみそ
0901nobodyさん2005/05/18(水) 22:37:10ID:???
aaa("skipper",\@skipper);

sub aaa{
my $who = shift;
my $items = shift;
以下略・・・
}
09028942005/05/18(水) 22:52:46ID:???
>898
ネ申
ありがとうございました……マジで
0903nobodyさん2005/05/19(木) 11:30:49ID:???
>>897
>>896が言いたいことは変数に改行コードがくっついたままじゃないかって事だと思う
$a = chomp($a);
$b = chomp($b);
0904nobodyさん2005/05/19(木) 11:32:49ID:???
Perlは代入しなくて良かったんだっけ
chomp($a);
だけでおk
0905nobodyさん2005/05/19(木) 14:11:39ID:???
perlで音を出すモジュールなんかある?windowsなんだけど。
予定時間設定しといて、アラーム音出したいんだけど。
0906nobodyさん2005/05/19(木) 14:26:36ID:???
\aじゃだめか?
0907nobodyさん2005/05/19(木) 15:01:14ID:???
Win32::Sound とかか
0908nobodyさん2005/05/19(木) 15:38:09ID:???
あう、、、
cgiとかの引数ってどうやって取得するのでしょうか?
(hoge.cgi?day=20050519)
          ↑ここを取得したい。

基本的なことで申し訳ございませんが
手元の本には載っていないので
お教えいただけないでしょうか?

レス数が900を超えています。1000を超えると表示できなくなるよ。