VB中怎样判断输入的数是否为十六进制数

来源:百度知道 编辑:UC知道 时间:2024/07/06 12:59:58
自己写了一个
Function panduanHex(x As String) As String '判断是否为十六进制数'
Dim i As Integer
Dim a, b
a = x
For i = 1 To Len(x)
b = Mid(x, i, 1)
If Not ((b >= "0" And b <= "9") Or (b >= "A" And b <= "F")) Then
panduanHex = E
Exit Function

End If
Next i
End Function
可是不对

Function panduanHex(x As String) As Boolean '判断是否为十六进制数
If Len(x) <> 0 Then
panduanHex = Not (x Like "*[!0-9A-Fa-f]*")
Else
panduanHex = False
End If
End Function

Function panduanHex(x As String) As String '判断是否为十六进制数'
Dim i As Integer
Dim a, b
a = x
For i = 1 To Len(x)
b = Mid(x, i, 1)
If Not ((b >= "0" And b <= "9") Or (b >= "A" And b <= "F")) Then
panduanHex = "E"
Exit Function

End If
Next i
End Function

fsd

如果一个数中没有字母,只有数字,那你是无法判断它是几进制的数的。所以你的思路不对。