- PR -

うまくカウントするには・・・

投稿者投稿内容
小僧
大ベテラン
会議室デビュー日: 2005/06/24
投稿数: 122
投稿日時: 2005-08-12 14:45
こんにちは。
※ 外してたらかなり恥ずかしいのですが。。。

>aaは String aa = spl[0];
>です。前の文に書いたまま省略してしまいすいませんでした。
いや、だから、
aa.matches(aa)
だと、調べたい「AA」はどこにも記述されていませんよね?
それじゃー欲しい結果は得られませんよね?
※ 意味わかりますか?

>今後勉強してから質問いたします。
勉強も大事ですが、自分でしたいことをきちんと把握していますか?
それが先だと思います。
( あと、変数名とかも変えた方がいい気がしますが。。。 )
norinorimi
ベテラン
会議室デビュー日: 2005/07/28
投稿数: 51
投稿日時: 2005-08-15 11:41
すいません。ネットのない環境にいたもので。。
raystar様、丁寧に教えていただきありがとうございました。
実は先輩からもそうヒントをいただき、何とかなりました。

小僧さま、何度もすいません。

String aa = spl[0];
だと、
System.out.println(aa);
で「AA」をとることが可能だと確認しました。
自分の場合はequalsメソッドで前の行に合っているかどうかを解決しました(前の行との比較のコードは省略させてください)。

今までの書き方が悪くて本当にすいませんでした。


まる
会議室デビュー日: 2005/08/17
投稿数: 2
投稿日時: 2005-08-17 15:16
こんにちは。
既に解決されておられる(?)ようですが、ちょっと思いついたので書いてみます

コード:
String line;
int counter = 0;
while( (line = br.readLine()) != null ){

 String spl[] = line.split("AA");
 counter += spl.length - 1
}



"AA"で分割するので、行中に無ければlength==1(-1してカウントには+0)
一つあればlength==2、2つあれば…という風に、一行に何個あっても対応可能です。


あと、aa.matches(aa), aa.equals(aa)は…
確実にtrueが返ってくるような気がします。
まる
会議室デビュー日: 2005/08/17
投稿数: 2
投稿日時: 2005-08-17 15:31
すみません、お詫びと訂正をさせていただきます。

aa.matches(aa)は、aaに入ってる文字列に正規表現に使うシンタックス(?)
(例えば.とか+とか)が入ってるとfalse返ってくる可能性もあるかもしれませんので、
「確実に」というのは不適当でした。
あと、よく読むと解決済みな部分への不用意な突っ込みでした。
失礼致しました。

スキルアップ/キャリアアップ(JOB@IT)