• 締切済み

正整数の半角数字かどうか判定する

VB.NET2008を使っているのですが、 TextBox1に入力された文字が正整数の半角数字かどうかの 判定をしたいのですが、何かいい方法はないでしょうか? どなたかよろしくお願いします。

みんなの回答

回答No.3

すでに回答がありますが「テキストボックスに記入された文字が数値(正数)として有効かどうかを調べる」という目的であればこんな方法もあります。 Dim uintValue As UInteger = 0 ' 正数なので符号なしInt型 If UInteger.TryParse(TextBox1.Text, uintValue) Then ' 正数である Else ' 正数でない End If

全文を見る
すると、全ての回答が全文表示されます。
  • AKARI0418
  • ベストアンサー率67% (112/166)
回答No.2

Dim s As String = "123" If System.Text.RegularExpressions.Regex.IsMatch(s, "^[0-9]+$") = False Then Return End If 正規表現によるチェックで半角の数字のみかどうかはチェックできます。 さらに加えて、数値(マイナスの整数など)かどうかをチェックしたい場合は、ISNumericを使うとよいですよ。 If IsNumeric(s) = False Then Return End If 全角でも数字ならTrue

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

こんにちは  VB.NET2008 は、知らないのですが..  BASIC言語なら定石に近い方法として、文字型変数si$で受けたデータをIF文の条件判定で..とするならば IF VAL(si$)>0 THEN ..  という古典的な方法があります(「正整数」に0を含むならちょっと手直しを!)。  TextBox1のプロパティなどで入力制限が出来るかどうか判りませんがGUI上のBASIC言語ならその手があっても不思議じゃないですね。有識者の方のアドヴァイスを待ちましょう。

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

関連するQ&A

  • 半角数字かどうかの判定

    いつもお世話になっております。 VB6を使っているのですが、文字列が半角数字かどうかの 判定をしたいのですが、何かいい方法はないでしょうか? どうかよろしくお願いいたします。

  • VBAのTextBoxに半角数字のみ入力したい

    VBAでTextBox2には半角数字のみしか入力できないように制御したいのですが、どうしたらよいのでしょうか。 TextBoxのプロパティでIMEModeを「8-fmIMEModeAlpha」というのにしたのですが、半角英字も入力できてしまいます。 どなたかよい方法をご教授ください。

  • InputBoxの入力値を半角数字のみと限定する方法

    Excel_VBAで、InputBoxにより半角数字の入力を求めています。入力値が半角数字でない判定をするのに、最も容易な方法はありませんか?"CInt"だと文字列ではダメですし、悩んでおります。 InputBoxに、半角数字のみと限定するようなオプションがあれば良いのですが・・・。

  • TextBoxに半角数字のみの入力しかできないようにしたい

    タイトルどおりです。 フォームに貼り付けた、TextBoxに、半角数字のみしか入力できないようにしたいです。 000000~999999までのコード(数字)を入力させるようにするわけですが、そのままだと半角英数も全角も入力できてしまいます。 GrapeCity社製のカスタムコントロール「InputMan」の“Number”を用いると簡単なのですが、これだとカーソルがボックス内の右端にきて、一の位から入力が始まってしまいます。 数字は、ボックス内の左側から入力されていくようにしたいのですが、“Number”だとなんか出来なさそう・・・? (“Number”で左側から入力できるならそれがいいのですが) そこで、TextBoxを使うことにしたのですが、TextBoxだと、半角数字のみしか入力できないような制限がかけるのかが、わかりません。 もし、お分かりの方がいらっしゃいましたら、ご教授下さいませ。

  • 小数か整数かを判定する方法

    お世話になります。 ただいま、VB6で悩んでいる事があり質問させていただきに参りました。 1: あるテキストボックスがあり、それには数字のみ入力するのですが、 小数が入力された場合、小数点第1位までしか入力させない、または小数点第2位以下が入力されていた場合、エラーメッセージ表示という処理をしたいのです。 例えば、1.5という文字の入力はOKですが、1.55と入力された場合は、エラーメッセージを表示。 2: 上記のテキストボックスに整数が入力されていたら、Format関数で、"00000"というカタチにして、小数が入力されていたら、"000.0"というカタチにしたいのです。 整数か?小数か?という判定方法が分からず困っています。 熟練者の方々にはとても簡単な事かもしれませんが・・・。 ご教授の程、どうかよろしくお願いします。

  • VB2008で全角半角の判定

    VB2008で全角半角の判定 VB6 では下記のようにして判定していましたが、VB2008では どのようにすればよいのかお教えください。  dim moji as string dim zhN as integer  zhN = LenB(StrConv(moji, vbFromUnicode)) mojiには1文字格納されており、  半角なら zhN = 1 全角なら zhN = 2 となる。  これをVB2008で実現する方法がわかりません。  よろしくお願いします。

  • 半角数字にできなくて困ってます!

    ネット通販に申し込むために会員登録しようと思い、 今入力していたのですが、何故か電話番号の入力する欄だけ 半角文字にならなくて困ってます! でも半角数字で入力してくださいと書いてあるので、やはり「次へ」をクリックしても、正しく入力 するように表示されて前へ進めません・・他の欄では半角と全角に変えられるのに、電話番号の欄では何故か変えられなくて困ってます どうしてなんでしょうか? 買いたいものがあるのに買えなくて困ってます・・・解決法は何かないでしょうか??  

  • vb6でテキスト入力の数字を判定したい。

    お世話になります。 XPでvb6を使ってプログラムを作っています。 テキスト形式で入力された文字が数字の0から15までの数字かを判断したいのですが IsNumeric関数で数字か数字以外の文字かを判定した後、 VAL関数で判定とプログラミングしたところ 入力された値が”1d1”だと IsNumeric関数はTrue、VAL関数は10になり 正しい入力と判断されてしまします。 何かいい方法があればご教授頂きたく宜しくお願いします。 以上です。

  • テンキーで半角数字を打つには?

    中古のXPノートパソコンを購入しました。右側に数字用のテンキーが付いているタイプです。普通のキーボードで文字を全角で打つ時に、半角数字が必要な時だけ右のテンキーで入力できるので、デスクトップパソコンと同じ感覚で打てるので便利でした。しかし、どこか余計なキーを押したらしく、文字を打つ場合に右のテンキーを使うと数字が全角で入力されてしまいます。キーボードの入力を数字に切り替えるとテンキーも半角に切り替わります。 これでは、キーボードの上にある数字キーと同じ動作ですから、テンキーが付いている意味がないのです。文字入力の時に、右のテンキーだけ半角数字が直接入力できるように設定する方法を教えてください。いつか、デスクトップパソコンでも同じことが起こったような記憶があります。なお、この現象はATOKでも、マイクロソフトのIMEでも同じです。

  • 整数を1000で割り小数点つけた形の文字列に変換したい・・(例12000→12.000)

    VB.NETです。 TextBoxに入力された整数(例12000)を、1000で割り、小数点第3桁まで有効にして、表示したいです。 String.Format(TextBox値, "#.000")でやろうとしていますが、“12”で表示されてしまいます。 小数点を有効した形で、文字列に変換するには、どうすればよろしいでしょうか?