Visual Basic 中学校 > Visual Basic サンプル集 > Visual Basic サンプル集目次 > System.Windows.Forms.TextBox >
数字以外の入力をエラーにする
以下の例は正規表現を使用して数字以外の文字が存在するか調べる。存在する場合はメッセージを表示してエラーにする。
Private
Sub TextBox1_Validating(ByVal
sender As Object,
ByVal e As
System.ComponentModel.CancelEventArgs) Handles
TextBox1.Validating If System.Text.RegularExpressions.Regex.IsMatch(TextBox1.Text, "[^0-9]+") Then MsgBox("数字以外の文字は入力できません。") e.Cancel = True End If End Sub |
メモ:入力チェックはOKボタンや保存ボタンが押されたタイミングで一括して行うことをお勧めします。
以下の例は上記の例と同じ動作をするが、正規表現を使わない構造を採用したもの。
Private
Sub TextBox1_Validating(ByVal
sender As Object,
ByVal e As
System.ComponentModel.CancelEventArgs) Handles
TextBox1.Validating Dim i As Integer Dim Letter As String For i = 1 To Len(TextBox1.Text) Letter = Mid(TextBox1.Text, i, 1) Select Case Letter Case "0", "1", "2", "3", "4", "5", "6", "7", "8", "9" Case Else MsgBox("数字以外の文字は入力できません。") e.Cancel = True Return End Select Next End Sub |
メモ:入力チェックはOKボタンや保存ボタンが押されたタイミングで一括して行うことをお勧めします。