プロが教えるわが家の防犯対策術!

VB.NETなのですが、String型に入ってる文字列が
数字とA~Fのみの16進数の値であるかどうかを判別するには
どのようにしたら良いでしょうか?
よろしくお願いいたします。

A 回答 (2件)

こんばんは。



Sub main()
Dim a As String
Dim b As Integer
a = "5l"
Try
b = Convert.ToInt32(a, 16)
MsgBox("OK")
Catch ex As System.FormatException
MsgBox("NG")
End Try
End Sub

こんなのはどうでしょうか。
    • good
    • 1

Class Q3893906A


Public Shared Sub Main(args As String())
Dim a As Integer
Try
a = Integer.Parse("F",System.Globalization.NumberStyles.HexNumber)
' "FF6A"みたいな文字列もOKなので,文字で考えたかったら取得した数値が0-15の範囲に収まっているかを自分でチェックすること。
'また、Integer.Parseは他にも例外を出す可能性がある(System.OverflowException等。メソッドのヒントに書いてある。)がここでは省略する。

System.Console.WriteLine(a.ToString)
System.Console.ReadKey(True)

Catch e As System.FormatException
System.Console.WriteLine(e.ToString)
System.Console.ReadKey(True)

End Try
End Sub
End Class
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!