私は入力(ツイート)を取る必要があり、入力が有効な長さ(最大= 148文字)であれば、そこにいくつの言及とハッシュタグがあるか、そしてメッセージが再ツイートされた「RT:」の場合)。文字列を超えてコンテンツをテストするにはどうすればよいですか?
私はすでにキャップ長と再つぶやきを取り上げましたが、ハッシュや数え方をどのように計算すればよいのか分かりません。これは私が作ってみたものです:
for (int i = 0; i < tweet.length(); i++) {
if ((tweet.charAt(i) == '#') && (tweet.charAt(i+1) != ' ')) {
hash++;
}
}
私が直面している問題はハッシュタグがあるか、変数が範囲の外に出ると、私はインデックスの範囲の例外を取得し、文字列の最後に言及している場合ということです。だから、最後に文字を数えずに例外なく同じ効果を得る方法を見つけるのを助ける必要がある。
「関数」という言葉は、ハッシュ「関数」とまったく同じ方法で動作します。
'#charAt(i + 1)'の代わりに、 '#indexOf(" '、/ * start index * /) 'を使ってください。ハッシュタグと部分文字列のインデックスを見つけることができます。さらに、正規表現が気にならない場合は、 ''''に分割して単語が '#'で始まるかどうかを確認することができます。 – Rogue
まあ、i + 1が文字列の長さより小さいことをテストしてください。 –
@ cricket_007ハッシュの後にスペースを入れないように見えます。 – shmosel