- PR -

文字列の分解について

1
投稿者投稿内容
未記入
ベテラン
会議室デビュー日: 2005/04/20
投稿数: 69
投稿日時: 2006-07-13 18:06
いつもお世話になります。

Javaでプログラムをくんでいます。
初歩的な質問で申し訳ありませんが、どなたかアドバイスください。

エクセルの行と列をあらわす文字列をアルファベットと数字にわけようとしています。
たとえば、A10だとA,10に分ける感じです。
正規表現を利用しようと考えたのですが、A,2,2に分けられるような…

スマートにA,10と分けるには、どのような設計をすると良いでしょうか?
想馬
大ベテラン
会議室デビュー日: 2003/05/29
投稿数: 245
お住まい・勤務地: 神奈川・東京
投稿日時: 2006-07-13 19:43
([A-Z]+)([0-9]+)
_________________
己への戒め

「活動的な馬鹿より恐ろしいものはない」 by ゲーテ
未記入
ベテラン
会議室デビュー日: 2005/04/20
投稿数: 69
投稿日時: 2006-07-14 11:35
返信ありがとうございます!
正規表現を用いて分解することができました!

続けて質問させて頂きたいのですが…

エクセルの列番号を取得するために、コンバータの働きをするメソッドを作成しようと考えています。
例). Aは0(列目)、Bは1、Cは2…Zは25を返す
if文やswitch文で記述するとアルファベットの数だけ分岐を記述しないといけないですよね?
今は、文字コードを使った方法等考えているのですが、行き詰っています。

うまくコードをくみたいのですが、良いアイデアありませんか?
Edosson
ぬし
会議室デビュー日: 2004/04/30
投稿数: 675
投稿日時: 2006-07-14 11:50
char charA = 'A';

はご存じですよね。
これを使ってオフセットをとれば、簡単にできるのでは。

質問が変わったのなら、スレッドを変えた方がいいかもしれません。
こういうのもあるし。
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=30365&forum=12&45
かつのり
ぬし
会議室デビュー日: 2004/03/18
投稿数: 2015
お住まい・勤務地: 札幌
投稿日時: 2006-07-14 12:28
エクセルなら、"AA"とかもあるので、
Googleで"26進数"で検索してみましょう。
ちょうどいいアルゴリズムがたくさん出てきます。
1

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