项目有判断一个字符串是不是16进制的需求,我本来百度的,最后发现还是自己写比较好。
刚开始我使用的椒正则表达式,然而效果并不是很好(应该是我写错了)。所以使用 ascii 来实现。所谓hex无非就是
(0~9||a~f||A~F)
我这边遍历每一个字符 然后进行判断
fun checkHexString(string: String): Boolean {
for (element in string) {
var cInt: Int = element.toInt()
if ((cInt in 48..57)
|| (cInt in 65..70)
|| (cInt in 97..102)
) {
} else {
return false
}
}
return true
}
其实 ascii 是可以帮助我们做很多判断的 比如是不是数字