こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

数字3桁のチェック

C♯環境(.net2.0)です。

文字列が数字3桁で構成されているか確認したいと思っています。
「001」等、頭に0があってもokです。
マイナス等の記号が入っていたらNGです。

現在は、lengthが3か見てから、TryParseでintに出来るか見ている
のですが、もう少しシンプルなやり方はないものでしょうか。
正規表現とかで出来るものですか?

ご教授いただければ幸いです。
宜しくお願いします。

投稿日時 - 2012-11-14 23:55:21

QNo.7798278

困ってます

質問者が選んだベストアンサー

using System.Text.RegularExpressions;

bool 数字3桁(String 文字列)
{
   Regex 正規表現 = new Regex("^\\d{3}$");
   return 正規表現.IsMatch(文字列);
}

こんな感じの関数でどうでしょうか。
正規表現の\d は数字を表わし、{3}は3桁を
意味します。
^は文字列の先頭、$は文字列の終端を示し
ます。
つまり、「数字で始まり数字で終わる3桁の数字」
という表現です。
これに一致するかどうかをIsMatchメソッドで調べ
ます。

投稿日時 - 2012-11-15 20:27:38

ANo.2

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.1

regexは多分使えるでしょうが、lengthとTryParseよりシンプルって訳には行かないのでは。
あと-がNGならintでなくuintを使った方が。

投稿日時 - 2012-11-15 07:47:11

あなたにオススメの質問