2012-02-22 30 views
3

拡張ASCII文字に基づいて分割する必要がある文字列があります。私はすべての文字をチェックすることでそれを行うことができることを知っています。それに対応する値はそれよりも大きい127です。通常のASCII文字は0〜127のベット値を持つからです。これは効率的な方法ではありません。私はそれを行うことができる他の方法はありますか?Javaで拡張ASCIIに基づいて文字列を分割する方法

+0

特定の拡張ASCII文字または拡張ASCII文字を意味しますか? –

+0

あなたが想像できる文字列分割関数は文字列ごとに少なくとも1回は文字単位で繰り返します。他の方法はありません。 – Thilo

+0

「拡張ASCII」は非常に曖昧な用語です。特定のUnicode文字を覚えていますか? –

答えて

3

無効文字クラスを使用して文字列split methodを使用します。 [\x00-\x7F]はすべてアスキー文字なので、[^\x00-\x7F]はすべて非アスキー文字(「拡張アスキー文字」と同じであるかどうかにかかわらず)は別の問題です.Jon Skeetがコメントで指摘したように、その用語の意味はあいまいです)。

String[] result = String.split("[^\\x00-\\x7F]"); 

これは非ASCII文字のすべてのオカレンスに分割されますので、あなたはその結果に空の文字列で終わるかもしれないことに注意してください。

関連する問題