• 締切済み

文字列の種類判定の方法について

引数のStringが、「すべてアルファベット」か「日本語(ひらがな、カタカナ、漢字)を含む」かによって分岐処理をさせたいと思っています。 ネットを調べると、Character.isLetterが使えそうかと思ったのですが、これは1文字のみの判定のようですね。 Stringを一度に判定するメソッドはありませんか? なければ、Stringを1文字ずつ分けて判定していくしかないんでしょうか。 つまらない質問ですが、よろしくお願いします。

  • aneja
  • お礼率93% (379/405)
  • Java
  • 回答数1
  • ありがとう数2

みんなの回答

noname#235174
noname#235174
回答No.1

正規表現を使うとかでは駄目ですか?

aneja
質問者

お礼

ご回答のお礼が遅くなりすみません。 javaでも正規表現がつかえるのですね。java.util.regexパッケージですね。 なんとかなりそうです。ありがとうございました。

関連するQ&A

  • □□□□□ 5文字で笑わせることができますか?

    □□□□□ ひらがな、カタカナ、漢字、アルファベット、数字、なんでも結構です。 5文字で笑わせてください。

  • 生れ変ったら、好きな「文字」になれる・・・としたら?

    生れ変ったら、あなたは自分の好きな「文字」になれます・・・としたら、どんな「文字」になりますか? ひらがな、カタカナ、漢字、アルファベット、記号・・・何でも選べます。 因みに私は、「¥」。 お金に不自由しないし、スリムな体型だし、りりしい顔にも見えるし・・・

  • 文字の判定

     こんばんわ。早速ですが、VBにおいて入力、又は取り込んできたデータの文字(1文字)が全角文字(漢字・ひらがな・全角スペース等)か半角文字(半角カタカナ・半角スペース等)かをみわける関数ってあるのでしょうか?

  • 日本のように3種類の文字がある国

    種類なのかはわかりませんが、日本は「ひらがな」「カタカナ」「漢字」の3つがありますよね。 外国にも、同じような国はありますか?韓国はハングルと漢字が使われていますが、ほとんどハングルですよね。中国も漢字がわからないときにはアルファベットを使うそうですが・・・

  • Excel 並べ替え順序

    数字、アルファベット、カタカナ、ひらがな、漢字 それらの大文字小文字 昇順の並べ替えは 日本語は、あいうえお順、数字は小さい方から大きい方へ アルファベットは、aからzへとそれぞれは判るのですが 数字、アルファベット、カタカナ、ひらがな、漢字 それらの大文字小文字がまじりあった時の昇順並べ替えの 順序は決まっていますか

  • 外国人が感じる『日本語』のイメージは?

    外国人が感じる『日本語』のイメージはどういうものなのでしょうか? とくにアルファベット使用圏からみた意識を教えてください。 『日本語』が、ひらがな・カタカナ・漢字という3種類の文字で構成されているということに対する率直なイメージは何ですか? 自分の経験では、ドイツ人に『漢字 Chinese character』のイメージを聞いたら「cool」といわれたことがあります。

  • マクロを使って文字列を分類したい。

    マクロを使って、次の処理を行うマクロを作りたいのですが、 まず、漢字・ひらがな・カタカナ・数時・アルファベットを識別するコードの抽出方法と、コードの一覧がわかりません。 それから、文字列の処理の関数がなかなか思いつきません。 2年ほどマクロを使っていません。エクセルも2007になり、かなり勝手が違います。 できれば、マクロを示していただければありがたいのですが、 重要なヒントを示していただいても構いません。 ----------------------------------------------- セル(H、5)の中に、いろいろな文字列があります。 例えば、 「東京1月アメリカEUやまとChinaイギリス日本2009年おわり」 ですが、 これを 漢字をA列に1行から順に、 東京 月 日本 年 ひらがなをB列に1行から順に、 やまと おわり カタカナをC列に1行から順に、 アメリカ イギリス 数字をD列に1行から順に、 1 2009 アルファベットをE列に1行から順に、 EU China というように出力するマクロを作りたいのです。 よろしくお願いします。

  • 配列の型判定の仕方

    メソッドの引数をObjectにして、その引数の型を判定しようとしています。 たとえば以下のような感じです。 String hoge(Object para) { if(para.equals(java.lang.Integer.class)) { return "intです"; } return "わかりません" } 上記は、int型なら判定できるメソッドですが、int[]やString[]を判定するためにはどうしたらよいのでしょうか? paraにint[]型の値が入ってきた場合、 para.equals(java.lang.Integer[].class) としてもtrueにはなりませんでした。 どうすればできるのか、ご教授いただけると幸いです。 手段がなければ、para.getClass().toString()をして出力される文字列で判定しようかと思っています。

    • ベストアンサー
    • Java
  • 文字列の動的な結合

    C♯、.net frameworkdは2.0の環境です。 メソッドでSQL用の文字列を作っています。 引数によって、JOINするテーブルを変えたいのですが、StringBuilderではなく、 単なるStringの変数を、ひたすら + で結合している状態なので、悩んでいます。 String sql; sql = " select " + " tbl.column1 " + " from " + … こんな感じです。 StringBuilderで作り直したいのですが、諸事情により難しいので、+での文字列結合をしつつ、 ところどころ、引数を見て文字列を結合したりしなかったり…ということをスムーズにできる 方法はないでしょうか?

  • 【Java】複数の引数の数値と文字列の判定

    Javaについてです。 コマンドライン引数を複数渡し、渡ってきた値が数字のみの場合は、数値*数値の文字数を出力し 数字のみでない場合は文字列を逆から1文字ずつ出力する。 数値の判定はtry/catchで行い、catchメソッドには「stringFlg = true;」のみにする。 というプログラムを作りたいのですが、 引数が1つの時は上手くいくのですが、11 2あ あ3 44を渡した場合、 22 あ 2 3 あ 88 と出るはずが、 22 1 1 あ 2 3 あ 4 4 と出てしまいます…。 どうしたら全ての引数を正しく表示出来るのでしょうか?教えて下さい。 現時点のソースコードです。 public class Test { public static void main(String[] args) { boolean stringFlg = false; try { if(StringUtils.isNumeric(args[0])){ for(String arg : args) { int num = Integer.parseInt(arg); System.out.println(num * arg.length()); } } else{ stringFlg = true; } } catch (NumberFormatException e) { stringFlg = true; } if(stringFlg){ for(String val : args) { String[] str = val.split(""); for(int i = str.length-1; i >= 0; i--){ System.out.println(str[i]); } } } } }

    • ベストアンサー
    • Java

専門家に質問してみよう