(android)相关正则技巧记录
2018-05-04 本文已影响0人
初见soulmate
1 判断是否手机号码:
/**
* 方法名: isPhoneNumber
* 参数:String
* 返回值:boolean
* 方法作用:判断参数字符串是否为电话格式
*/
fun isPhoneNumber(phoneStr: String): Boolean {
//定义电话格式的正则表达式
val regex = "((\\d{11})|^((\\d{7,8})|(\\d{4}|\\d{3})-(\\d{7,8})|(\\d{4}|\\d{3})-(\\d{7,8})-(\\d{4}|\\d{3}|\\d{2}|\\d{1})|(\\d{7,8})-(\\d{4}|\\d{3}|\\d{2}|\\d{1}))$)"
//设定查看模式
val p = Pattern.compile(regex)
//判断Str是否匹配,返回匹配结果
val m = p.matcher(phoneStr)
return m.find()
}
2 电话号码星号转换:
/**
*电话号码星号转换
*/
fun phoneWithStar(phone: String?): String? {
val length = phone?.length
return if (length!! >= 7) {
phone?.replace("(?<=\\d{3})\\d(?=\\d{4})".toRegex(), "*")
} else {
phone
}
}
未完待续。。。