- PR -

文字列比較について

投稿者投稿内容
未記入
会議室デビュー日: 2005/04/06
投稿数: 15
投稿日時: 2005-07-10 12:00
if(1文字目 == A){・・(処理)・・}
if(3文字目 == 英数字){・・(処理)・・}
if(5文字目 == A〜M || U〜V){・・(処理)・・}
if(9文字目 == スペース || 英字){・・(処理)・・}
if(10文字目 == D || i){・・(処理)・・}
if(12文字目 == 数字){・・(処理)・・}

これでよい〜?(・∀・)ノ
ひっき
会議室デビュー日: 2005/07/09
投稿数: 4
投稿日時: 2005-07-10 12:46
ありがとうございます。

正規表現を使っていこうと思います。
今までは1文字だけの指定でしたが、「13文字目から15文字目が英数字であるか」というif文はどうなりますでしょうか?

1文字指定はcharAt()を使っていこうと思っています。

Gio
ぬし
会議室デビュー日: 2003/11/28
投稿数: 350
お住まい・勤務地: 都内から横浜の間に少量発生中
投稿日時: 2005-07-10 19:44
引用:

ひっきさんの書き込み (2005-07-10 12:46) より:

今までは1文字だけの指定でしたが、「13文字目から15文字目が英数字であるか」というif文はどうなりますでしょうか?



13文字目が英数字 && 14 文字目が英数字 && 15 文字目が英数字

=====
「xが英数字」は、基本的な考え方は
コード:
(x >= '0' && x <= '9') || (x >= 'A' && x <= 'Z') || (x >= 'a' && x <= 'z')


です。

Java 限定で良ければ java.lang.Character クラスを使って
コード:
Character.isDigit(x) || Character.isUpperCase(x) || Character.isLowerCase(x)


とも書けます。
ただしこの場合は 0〜9、A〜Z、a〜z 以外にもマッチするものがあることに注意してください。
(詳しいことは該当メソッドの API ドキュメントを読んでください。)

なお、「x が 20 文字以上 100 文字以内で、それぞれの文字はすべて数字である」という条件をこういう論理式一つでずらずら書くと、読んだ人から大抵の場合は「アホ」と言われます
複雑になる場合は正規表現マッチを使うのが、読解性や保守性の点で良いでしょう。
未記入
常連さん
会議室デビュー日: 2005/05/24
投稿数: 48
投稿日時: 2005-07-10 20:55
ども

はぁ...解答するのが早すぎましたかね。
未記入
会議室デビュー日: 2005/04/06
投稿数: 15
投稿日時: 2005-07-10 23:48
はぁ・・・
ブラックジョークも通用しねぇ・・・orz

[独り言]
この複数の条件、どう処理するんだろう?
まさかすべてif文のネストじゃないよね・・・?
過去に恐ろしいネストを見たことがあります。
if(条件){
 if(条件){
  if(条件){
   ・・・以下10段階以上のネストが続く・・・
[/独り言]
かつのり
ぬし
会議室デビュー日: 2004/03/18
投稿数: 2015
お住まい・勤務地: 札幌
投稿日時: 2005-07-10 23:56
調べて勉強するよりも、直接の答えが欲しいだけなんでしょうか。。。

「やさしいJava」
http://www.amazon.co.jp/exec/obidos/ASIN/4797319062/249-2970190-1062704

googleで、[java][解説]で検索した結果
http://www.google.co.jp/search?hl=ja&c2coff=1&rls=GGLD%2CGGLD%3A2004-32%2CGGLD%3Aja&q=java+%E8%A7%A3%E8%AA%AC&lr=

まずは勉強しましょう。なにも勉強せずに
「わからないので教えてください」
と言われてもどうしていいものやら。
ロス
常連さん
会議室デビュー日: 2005/03/25
投稿数: 26
投稿日時: 2005-07-11 09:45
googleで「java 正規表現」で検索した結果、一番上のサイト↓
http://www.hellohiro.com/regex.htm

java.util.regexパッケージを調べてみてはいかがでしょう?
未記入
常連さん
会議室デビュー日: 2005/05/24
投稿数: 48
投稿日時: 2005-07-11 11:31
ども

以下も参考になりますか?
http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/util/regex/Pattern.html#sum

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