• 締切済み

文字列のエラーチェック

Javaをはじめて間もないので、基本的なことなのかもしれませんが、回答いただけると嬉しいです。 (1)文字の空白チェック、AllSpace (2)文字列が数字かどうかチェック、convertAllDigit (3)文字列が英字かどうかチェック、AllCharacter (4)英数字の半角処理? convertHalfSize の使い方がいまいちよくわからず困っています。 よいサンプルや例がありましたら教えていただけると助かります。

みんなの回答

  • ssr-y6
  • ベストアンサー率71% (5/7)
回答No.3

 それっぽいメソッドを作ってみました。 チェックデータはファイルにして与えてください。 与えるデータはプラットフォームに依存します。 import java.io.*; public class charck { private static boolean AllSpace(String s) { int i; for (i = 0; i < s.length(); i ++) if (!Character.isSpaceChar(s.charAt(i))) break; return(i == s.length()); }; private static boolean CheckAllDigit(String s) { return(s.matches("[[0-9][0-9]]*")); }; private static boolean CheckAllAlpha(String s) { return(s.matches("[[a-z][A-Z][a-z][A-Z]]*")); }; private static String ConvertHalfSize(String s) { int i, j; StringBuffer sb = new StringBuffer(); byte b[], c[] = new byte[1]; for (i = 0; i < s.length(); i ++) { try { b = Character.toString(s.charAt(i)).getBytes("UTF-16BE"); c[0] = 0; if (b.length == 2) if (b[0] == -1) if (((b[1] >= 0x10) && (b[1] <= 0x19)) || ((b[1] >= 0x21) && (b[1] <= 0x3A)) || ((b[1] >= 0x41) && (b[1] <= 0x5A))) c[0] = (byte)(b[1] + 0x20); if (c[0] == 0) sb.append(s.charAt(i)); else sb.append(new String(c, "ISO-8859-1")); } catch (Exception ex) { sb.append('?'); }; }; return(new String(sb.toString())); }; public static void main(String args[]) { try { BufferedReader br = new BufferedReader(new FileReader(args[0])); String s; while ((s = br.readLine()) != null) { System.out.println(s + ":"); System.out.print(AllSpace(s) ? "o" : "x"); System.out.print(CheckAllDigit(s) ? "o" : "x"); System.out.print(CheckAllAlpha(s) ? "o" : "x"); System.out.println(":" + ConvertHalfSize(s)); }; } catch (Exception ex) { System.out.println(ex.toString()); }; }; }

全文を見る
すると、全ての回答が全文表示されます。
  • chi-kon
  • ベストアンサー率43% (58/132)
回答No.2

チェックなのになぜconvertなんでしょう。 勉強での質問であるならば 上記のことを実装するだけならば Stringクラスのメソッドだけで可能なので まずロジック重視でくんでみたらどうでしょうか? ある配列を定義しておき 文字列を一文字ずつチェック(charAtでもsubstringでもつかってください) 同じものがあったらtrueやらfalseやらを返すっていう つくりで(1)~(3)までは対応できるでしょう。 (4)は全角→半角の変換をさしているのでしょうか? 業務で行っているのであれば、 そういうことは共通関数つくってる人に聞いてください。 たいてい共通関数作ってる人が用意してくれるので それを使えばいいでしょう。 とりあえず#1の方がおっしゃってるとおり 質問の仕方があいまいすぎるので 的確な答えを得るまでに何回かやりとりを 行わないといけないですな(~~) 文章を見る限りSEやPG関係者ではないか もしくはそのタマゴなのかとお見受けいたしますが、 どちらにしても質問の仕方がイマイチです。。。

全文を見る
すると、全ての回答が全文表示されます。
  • UKY
  • ベストアンサー率50% (604/1207)
回答No.1

使い方も何も、AllSpaceやらconvertAllDigitやらが一体何者なのか分かりません。何かの参考書についているサンプルに出てくるとか、そういうものでしょうか? 少なくともAllSpaceやconvertAllDigitはJavaで一般的に広く使われている言葉ではないので、いきなり使い方はと聞かれても聞かれたほうが困ってしまいます。 詳細を補足してください。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 正規表現による文字列のチェックについて

    文字列の入力チェックで困っています。 入力された文字列が以下の文字のみで構成されているか、正規表現でチェックするにはどうすれば良いか教えてください。 できれば一発でチェックしたいです。 ・全角(漢字、ひらがな、かたかな)※英数字を含め、左記以外の全角は使用禁止 ・半角英数字 ・半角記号(「-」「.」「:」「*」「&」)※後から追加変更される可能性がある Java(UTF-8)とJavaScript(Shift-JIS)それぞれで対応できる方法をお願いいたします。

  • ユニークな文字列を作りたい。

    C♯、.NET FrameWordk2.0環境です。 戻り値として32~35桁のユニークな文字列(半角英数字のみ)を返すメソッドを 作りたいと思っています。 GUIDを発行してやれば良いかと思ったんですが、ハイフンが入っていたり、 アルファベットが大文字小文字混じっていたり(小文字のみにしたい)で、そのままでは 使えません。 発行したGUIDを、サクッと半角英数字(英字は小文字に置換)できるような方法は ないでしょうか? または、もっと簡単にユニークな文字列を発行できる方法がありましたら、ご教授 いただけるとありがたいです。 宜しくお願いします。

  • PHPでのエラーチェック

    現在、会員登録制のサイトを作っています。 そこで必須項目のエラーチェックを行っているのですが、うまくいかない箇所があります。 空白エラー、文字数指定まではできましたが、 ・半角数字 ・半角英数字 ・不正なメールアドレスではないか この3つでいき詰まっています。 サンプルコードをいくつか試しましたが、 「入力前から表示される」「エラーにならず次の確認ページへ移動する」 など、うまくいかないのです。 また、文字の色指定もしたいのです。 空白エラーは<p class="">で指定しているので同様<p class="">を使って色指定していきたいです。 どなたかご教授ください。

    • ベストアンサー
    • PHP
  • 文字列抽出方法の関数を教えてください。

    文字列抽出方法の関数を教えてください。 文字列に“{\”で始まる文字があった場合、そこから半角空白(1文字)までを削除。 次に“}”を削除して、残りの部分を表記させたい。 {\○△□● }の中は  ○・・・半角英語  △・・・半角数字  □・・・半角数字もしくは空白  ●・・・半角空白もしくはなし 次に半角空白があり“}”があります。 “{\”から一番目の半角空白を削除、“}”も削除したいです。 英語や数字はさまざまな文字が入ります。   下記☆が例になります。⇒以降が表記させたい内容です。 ☆ファイル名{\f3 :} ⇒ファイル名 : ☆{\f91 ( }{\f9 「}{\f91 12 }{\f9 設定}{\f91 }{\f9 」}{\f91 }{\f9 参照}{\f91 )} ⇒( 「12 設定 」 参照 ) 文字列の中には複数削除したい部分がある場合があります。 今は手作業で作業していて、とっても時間がかかるし間違える場合もあります。 何かいい方法があれば教えてください。 宜しくお願い致します。

  • 文字列に半角スペースがあるかのチェック

    文字列に半角スペースがあるかのチェックを正規表現を使って行いたいのですが、どのように書けばよろしいでしょうか? 開発環境はeclipse、開発言語はjavaを使っています。

    • ベストアンサー
    • Java
  • 読み込んだ文字列のチェック

    文字列型の数式(たとえば500*40*(3-2))に*、+、/、-、(、)、半角数字以外の文字が入っているか確認をしたいです。 一文字づつ取り出して確認する以外に方法はありますか?あったらぜひ教えてください。お願いします。

    • ベストアンサー
    • Java
  • パスワードチェック

    プログラム初心者です パスワードチェックする方法をおしえてください 質問1 半角英数字で8文字。その中に数字が含まれているかチェックしたいです 今までは数字が含まれているかチェックできていませんでした if(!preg_match("/^[a-zA-Z0-9]+$/", $pass) ||(strlen($pass) < 8)){ print "8文字以上の半角英字の中に数字を混ぜてください"; } 質問2 暗号化する前にmysqli_real_escape_stringで処理させてもいいですか?それとも暗号化した後にmysqli_real_escape_stringで処理させたほうがいいですか? $pass = mysqli_real_escape_string($link,$pass); $pass=hash('sha256',$pass); この下にDBに入れる処理 よろしくお願いします

    • ベストアンサー
    • PHP
  • エクセル 文字列に使われている文字のカウント

    セルの文字列に使われている文字を数えるにはどのようにしたら良いでしょうか?文字列は半角の英数字記号です。 例) 11111 -> 1 sdsdsd -> 2 xyzxyz -> 3 abc777 -> 4 g&id#d -> 5 qwerty -> 6

  • 文字列の抽出方法

    文字列より [] でくくられた半角英数字を取り出したいのですがいまいちわかりません。削除することはできたのですがどうやって取り出せばいいのかわかりません。 ▼例 こんにちは[test1234]こんばんわ ▼取り出す内容 test1234 以上宜しくお願いします。

    • ベストアンサー
    • PHP
  • Jcodeについて

    Jcodeについて教えてください。 Shift-jisで処理している文字列でJcodeを使用すると 半角カタカナ→全角カタカナ 半角小文字英字→半角大文字英字 への変換は文字コードをecuにしなくてもうまくいくのですが 全角英数字→半角英数字 に変換するとうまくいきません。 これはどうしてなのでしょうか?

    • ベストアンサー
    • Perl