- PR -

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

投稿者投稿内容
norinorimi
ベテラン
会議室デビュー日: 2005/07/28
投稿数: 51
投稿日時: 2005-08-12 11:30
117さま、すいませんでした。

matchesは使えないみたいですね。
[上書き]とは、AAではなくBBの行になった際に、変数aaが上書きされてBBになってしまうってことです。
前の行の値を別の変数に置き換えておくことで解決できそうです。
お手数おかけしました。




norinorimi
ベテラン
会議室デビュー日: 2005/07/28
投稿数: 51
投稿日時: 2005-08-12 11:49
小僧さま、すいませんでした。
matchesは間違いでした。

今後きをつけます
Coffeebeans
会議室デビュー日: 2005/03/30
投稿数: 3
お住まい・勤務地: 北海道
投稿日時: 2005-08-12 11:49
matchesは使えます。
もう一度APIドキュメントを読んで使い方を学ぶことをお勧めします。
これが読めないとこの先やっていけないと思うので……。
小僧
大ベテラン
会議室デビュー日: 2005/06/24
投稿数: 122
投稿日時: 2005-08-12 12:02
こんにちは。

根本的なことですが、いきなりコードを書いてはいませんよね?
なんか、自分がしたいことがまとまっていない気がします。
一度、フローなどを書いてプログラムの流れを把握することをお勧めします。

あと、すっごく気になっているのですが、
if(aa.matchs(aa)){
ここの太字の箇所ですが ( ここに比較したい文字列 AA を記述するんですよね? )
・「"」はいらないの?
・大文字じゃなくていいの?
とかとか。。。
( 外してたら恥ずかしいなぁ。。。 )
norinorimi
ベテラン
会議室デビュー日: 2005/07/28
投稿数: 51
投稿日時: 2005-08-12 13:15
小僧様
aaは String aa = spl[0];
です。前の文に書いたまま省略してしまいすいませんでした。
自分の場合はequalsでうまくいきました。
matchesはご指摘を受けたので試してません。

Coffeebeansさま
APIドキュメントを読んではいるのですが、愚問ばかりですいません

今後勉強してから質問いたします。
今回もチェックはしたのですが、学習が追いつきませんでした。すいません
Coffeebeans
会議室デビュー日: 2005/03/30
投稿数: 3
お住まい・勤務地: 北海道
投稿日時: 2005-08-12 13:46
例えば
aa.matches(".*AA");
だと「任意の文字の0回以上の繰り返し」+「AA」がaaと一致するか、
ということになります。
※例:文字列aaが「abcdeAA」などの場合、一致します。
(正規表現は詳しくないのですがAPIドキュメントを見て試してみました。)

aa.endsWith("AA");
だと文字列aaの最後が「AA」かということになります。

equalsだとsplitした結果の文字列が「AA」ではなく「xAA」などの場合、norinorimiさんの求める結果が得られるのでしょうか?
117
ベテラン
会議室デビュー日: 2005/05/09
投稿数: 94
お住まい・勤務地: 大阪府
投稿日時: 2005-08-12 13:53
他の皆さんが仰るように、一度頭から整理しなおしたほうがいいかもしれません。
ここから伺える様子ですと、色々と不安です

#そういえばString.matches()はJDKバージョン1.4以降でしたっけ
_________________
# Future Is On Fire !
raystar
ぬし
会議室デビュー日: 2003/01/16
投稿数: 251
お住まい・勤務地: Tokyo/Japan
投稿日時: 2005-08-12 14:27
引用:

-------AA,------
-------AA,------
-------BB,------
-------CC,------
-------CC,------



こんにちは。
仕様がよくわかりませんが、
AA, や BB, や CC, は1行最高1個ですか?

であれば、単純に

コード:
String line = br.readLine();

int aaCount = 0, bbCount = 0; ccCount = 0;

if(line != null && line.indexOf("AA,") >= 0) {
  aaCount++;
} else if ()...続く



じゃだめなんですか?
もっと単純に考えたほうが答えがみえそうですけど。

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