Back to Top

プログラムの覚書

Category: 文字

VB.NET 特定文に含まれる文字か判断する

特定文に含まれる文字かの判断をするサンプルプログラムを記載します。

 

'半角数字か判断する
Public Shared Function IsHalfNumeric(ByVal c As Char) As Boolean
    If "0"c <= c And c <= "9"c Then
        Return True
    End If

    Return False
End Function

'半角整数値か判断する
Public Shared Function IsHalfDigit(ByVal c As Char) As Boolean
    If IsHalfNumeric(c) OrElse c = "-" OrElse c = "+" Then
        Return True
    End If

    Return False
End Function

'半角実数値か判断する
Public Shared Function IsHalfReal(ByVal c As Char) As Boolean
    If IsHalfDigit(c) OrElse c = "." Then
        Return True
    End If

    Return False
End Function

'半角16進数か判断する
Public Shared Function IsHalfHex(ByVal c As Char) As Boolean
    If IsHalfNumeric(c) OrElse ("A"c <= c And c <= "F"c) OrElse ("a"c <= c And c <= "f"c) Then
        Return True
    End If

    Return False
End Function

'半角英文字か判断する
Public Shared Function IsHalfAlpha(ByVal c As Char) As Boolean
    If ("A"c <= c And c <= "Z"c) OrElse ("a"c <= c And c <= "z"c) Then
        Return True
    End If

    Return False
End Function

'半角カナ文字か判断する
Public Shared Function IsHalfKana(ByVal c As Char) As Boolean
    If ("ア"c <= c And c <= "ン"c) Then
        Return True
    End If

    Return False
End Function

'半角表示文字か判断する
Public Shared Function IsHalfDisplay(ByVal c As Char) As Boolean
    If (" "c <= c And c <= "~"c) OrElse ("。"c <= c And c <= "゚"c) Then
        Return True
    End If

    Return False
End Function

'半角日付文字か判断する
Public Shared Function IsHalfDate(ByVal c As Char) As Boolean
    If IsHalfNumeric(c) OrElse c <= "/"c Then
        Return True
    End If

    Return False
End Function

'半角時間文字か判断する
Public Shared Function IsHalfTime(ByVal c As Char) As Boolean
    If IsHalfNumeric(c) OrElse c <= ":"c Then
        Return True
    End If

    Return False
End Function

'半角電話番号文字か判断する
Public Shared Function IsHalfPhone(ByVal c As Char) As Boolean
    If IsHalfNumeric(c) OrElse c <= "-"c Then
        Return True
    End If

    Return False
End Function

'半角郵便番号文字か判断する
Public Shared Function IsHalfPost(ByVal c As Char) As Boolean
    If IsHalfNumeric(c) OrElse c <= "-"c Then
        Return True
    End If
    
    Return False
End Function

'全角カナ文字か判断する
Public Shared Function IsDblKatakana(ByVal c As Char) As Boolean
    Dim s As String = c.ToString()

    If Not System.Text.RegularExpressions.Regex.IsMatch(s, "^[ァ-ヴ!ー]+$") Then
        Return False
    End If

    Return True
End Function

'全角かな文字か判断する
Public Shared Function IsDblHiragana(ByVal c As Char) As Boolean
    Dim s As String = c.ToString()

    If Not System.Text.RegularExpressions.Regex.IsMatch(s, "^[ぁ-ん!ー]+$") Then
        Return False
    End If

    Return True
End Function
'文字コードが半角文字か判断する
Public Shared Function IsHalfChar(ByVal c As Char) As Boolean
    If  Convert.ToInt32(c) <= &HFF Then
        Return True
    End If
    
    Return False
End Function

 

Posted in 文字 | Leave a reply

VB.NET メソッドで特定文の文字かを判断する

メソッドを使用して、特定の文に含まれる文字か判断する方法を記載します。

IsNumberメソッドにて、文字が数字かどうか判断する

If Char.IsNumber("3"c) Then
    MessageBox.Show("数字です")
End If

'String型の場合は文字の位置を指定する
If Char.IsNumber("1234567890", 2) Then
    MessageBox.Show("数字です")
End If

'全角数字でも数字と見なす
If Char.IsNumber("1234567890", 2) Then
    MessageBox.Show("数字です")
End If

'以下の文字も数字と見なす
If Char.IsNumber("ⅠⅡⅢ①②③", 3) Then
    MessageBox.Show("数字です")
End If

 

IsDigitメソッドにて、文字が10進数の数字かどうか判断する

'半角・全角の文字が10進数の数字かどうか判断する		
If Char.IsDigit("3"c) Then
    MessageBox.Show("10進数の数字です")
End If

'String型の場合は文字の位置を指定する
If Char.IsDigit("12345678901234567890", 2) Then
    MessageBox.Show("10進数の数字です")
End If

 

IsLetterメソッドにて、文字がアルファベット文字かどうか判断する

'半角・全角文字がアルファベット文字かどうか判断する
If Char.IsLetter("A"c) Then
    MessageBox.Show("アルファベットです")
End If

'String型の場合は文字の位置を指定する
If Char.IsLetter("ABZabzABZabz", 2) Then
    MessageBox.Show("アルファベットです")
End If

 

IsLetterOrDigitメソッドにて、文字がアルファベット文字または10進数の数字かどうか判断する

'半角・全角文字がアルファベット文字または10進数の数字かどうか判断する
If Char.IsLetterOrDigit("A"c) Then
    MessageBox.Show("アルファベット文字または10進数の数字です")
End If

'String型の場合は文字の位置を指定する
If Char.IsLetterOrDigit("ABC123ABC123", 3) Then
    MessageBox.Show("アルファベット文字または10進数の数字です")
End If

 

IsWhiteSpaceメソッドにて、空白文字かどうか判断する

'文字が空白文字かどうか判断する
If Char.IsWhiteSpace(" "c) Then
    MessageBox.Show("空白文字です")
End If

'全角文字でも判断可能
If Char.IsWhiteSpace(" ", 0) Then
    MessageBox.Show("空白文字です")
End If

 

IsUpperメソッドにて、文字が大文字かどうか判断する

'半角・全角文字が大文字かどうか判断する
If Char.IsUpper("R"c) Then
    MessageBox.Show("大文字です")
End If

'String型の場合は文字の位置を指定する
If Char.IsUpper("ABCABC", 2) Then
    MessageBox.Show("大文字です")
End If

 

IsLowerメソッドにて、文字が小文字かどうか判断する

'半角・全角文字が小文字かどうか判断する
If Char.IsLower("r"c) Then
    MessageBox.Show("小文字です")
End If

'String型の場合は検査する文字の位置を指定する
If Char.IsLower("abcabc", 2) Then
    MessageBox.Show("小文字です")
End If

※数値はTryParseでの判断も可能です。

 

Posted in 文字 | Leave a reply