Android 正則表達(dá)式驗(yàn)證手機(jī)號、姓名(包含少數(shù)民族)、身份證號
最近項(xiàng)目中新增的功能,需要對手機(jī)號、姓名、身份證號等一些信息進(jìn)行驗(yàn)證,最好的方法是通過正則表達(dá)式來驗(yàn)證,網(wǎng)上查了一些資料,寫了這幾個工具方法。
1、驗(yàn)證手機(jī)號
規(guī)則:第一位只能是1,第二位為3-8中的數(shù)字,3-11位為任意的數(shù)字
/**
* 手機(jī)號號段校驗(yàn),
第1位:1;
第2位:{3、4、5、6、7、8}任意數(shù)字;
第3—11位:0—9任意數(shù)字
* @param value
* @return
*/
public static boolean isTelPhoneNumber(String value) {
if (value != null && value.length() == 11) {
Pattern pattern = Pattern.compile("^1[3|4|5|6|7|8][0-9]\\d{8}$");
Matcher matcher = pattern.matcher(value);
return matcher.matches();
}
return false;
}
2、驗(yàn)證姓名這里驗(yàn)證姓名,用戶可以在輸入框內(nèi)輸入任何東西,但是在點(diǎn)擊驗(yàn)證的按鈕時(shí),會調(diào)這個方法。
驗(yàn)證規(guī)則是:姓名由漢字或漢字加“•”、"·"組成,而且,“點(diǎn)”只能有一個,“點(diǎn)”的位置不能在首位也不能在末尾,只有在漢字之間才會驗(yàn)證通過。
/**
* 驗(yàn)證輸入的名字是否為“中文”或者是否包含“·”
*/
public static boolean isLegalName(String name){
if (name.contains("·") || name.contains("•")){
if (name.matches("^[\\u4e00-\\u9fa5]+[·•][\\u4e00-\\u9fa5]+$")){
return true;
}else {
return false;
}
}else {
if (name.matches("^[\\u4e00-\\u9fa5]+$")){
return true;
}else {
return false;
}
}
}
3、驗(yàn)證身份證號
驗(yàn)證身份證號
規(guī)則是:由15位數(shù)字或18位數(shù)字(17位數(shù)字加“x”)組成,15位純數(shù)字沒什么好說的,18位的話,可以是18位純數(shù)字,或者17位數(shù)字加“x”
/**
* 驗(yàn)證輸入的身份證號是否合法
*/
public static boolean isLegalId(String id){
if (id.toUpperCase().matches("(^\\d{15}$)|(^\\d{17}([0-9]|X)$)")){
return true;
}else {
return false;
}
}
以上正則表達(dá)式驗(yàn)證結(jié)果,通過true和false返回
以上就是本文的全部內(nèi)容,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,同時(shí)也希望多多支持腳本之家!
相關(guān)文章
使用adb?or?fastboot命令進(jìn)入高通的9008(edl)模式的兩種方法
這篇文章主要介紹了使用adb?or?fastboot命令進(jìn)入高通的9008(edl)模式,兩種方式通過命令給大家寫的非常詳細(xì),文中又給大家補(bǔ)充介紹了高通手機(jī)?進(jìn)入?高通9008模式的兩種方法,需要的朋友可以參考下2023-01-01
Android數(shù)據(jù)庫SD卡創(chuàng)建和圖片存取操作
這篇文章主要介紹了Android數(shù)據(jù)庫SD卡創(chuàng)建和圖片存取操作的相關(guān)資料,需要的朋友可以參考下2017-04-04
最近較流行的效果 Android自定義View實(shí)現(xiàn)傾斜列表/圖片
最近較流行的效果,這篇文章主要介紹了Android自定義View實(shí)現(xiàn)傾斜列表/圖片的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-06-06
Android中的SpannableString與SpannableStringBuilder詳解
這篇文章主要給大家介紹了關(guān)于Android中SpannableString與SpannableStringBuilder的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2017-10-10
Android之聯(lián)系人PinnedHeaderListView使用介紹
Android聯(lián)系人中的ListView是做得比較獨(dú)特的,這幾天,我把他提取出來了,寫成一個簡單的例子,留著備用,感興趣的朋友可以參考下哈2013-06-06
Android編程實(shí)現(xiàn)調(diào)用系統(tǒng)圖庫與裁剪圖片功能
這篇文章主要介紹了Android編程實(shí)現(xiàn)調(diào)用系統(tǒng)圖庫與裁剪圖片功能,結(jié)合實(shí)例形式分析了Android針對圖形的旋轉(zhuǎn)與剪切等具體操作技巧,需要的朋友可以參考下2017-01-01
Android 大文件上傳時(shí)處理上傳進(jìn)度問題小結(jié)
進(jìn)行大文件上傳時(shí),顯示上傳進(jìn)度給用戶帶來極好的用戶體驗(yàn)度,今天小編給大家分享Android 大文件上傳時(shí)處理上傳進(jìn)度問題小結(jié),需要的的朋友參考下吧2017-04-04
Android實(shí)現(xiàn)新手引導(dǎo)半透明蒙層效果
這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)新手引導(dǎo)半透明蒙層效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-03-03

