java使用正則表達(dá)式判斷手機(jī)號(hào)的方法示例
本文實(shí)例講述了java使用正則表達(dá)式判斷手機(jī)號(hào)的方法。分享給大家供大家參考,具體如下:
要更加準(zhǔn)確的匹配手機(jī)號(hào)碼只匹配11位數(shù)字是不夠的,比如說(shuō)就沒(méi)有以144開(kāi)始的號(hào)碼段,
故先要整清楚現(xiàn)在已經(jīng)開(kāi)放了多少個(gè)號(hào)碼段,國(guó)家號(hào)碼段分配如下:
移動(dòng):134、135、136、137、138、139、150、151、157(TD)、158、159、187、188
聯(lián)通:130、131、132、152、155、156、185、186
電信:133、153、180、189、(1349衛(wèi)通)
那么現(xiàn)在就可以正則匹配測(cè)試了,
import java.io.IOException;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class ClassPathResource {
public static boolean isMobileNO(String mobiles){
Pattern p = Pattern.compile("^((13[0-9])|(15[^4,\\D])|(18[0,5-9]))\\d{8}$");
Matcher m = p.matcher(mobiles);
System.out.println(m.matches()+"---");
return m.matches();
}
public static void main(String[] args) throws IOException {
System.out.println(ClassPathResource.isMobileNO("12016155153"));
}
}
第二種方法:
import java.util.regex.Matcher;
import java.util.regex.Pattern;
String value="手機(jī)號(hào)";
String regExp = "^[1]([3][0-9]{1}|59|58|88|89)[0-9]{8}$";
Pattern p = Pattern.compile(regExp);
Matcher m = p.matcher(value);
return m.find();//boolean
PS:這里再為大家提供2款非常方便的正則表達(dá)式工具供大家參考使用:
JavaScript正則表達(dá)式在線(xiàn)測(cè)試工具:
http://tools.jb51.net/regex/javascript
正則表達(dá)式在線(xiàn)生成工具:
http://tools.jb51.net/regex/create_reg
更多關(guān)于java算法相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《Java正則表達(dá)式技巧大全》、《Java數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Java操作DOM節(jié)點(diǎn)技巧總結(jié)》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總》
希望本文所述對(duì)大家java程序設(shè)計(jì)有所幫助。
相關(guān)文章
SpringBoot?HikariCP配置項(xiàng)及源碼解析
這篇文章主要為大家介紹了SpringBoot?HikariCP配置項(xiàng)及源碼解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-02-02
Springboot Cucumber測(cè)試配置介紹詳解
這篇文章主要介紹了Springboot Cucumber測(cè)試配置介紹詳解,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-04-04
解決Maven的pom.xml中設(shè)置repository不起作用問(wèn)題
這篇文章主要介紹了解決Maven的pom.xml中設(shè)置repository不起作用問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-03-03
SpringSecurity獲取當(dāng)前登錄用戶(hù)的信息的幾種方法實(shí)現(xiàn)
本文主要介紹了SpringSecurity中獲取當(dāng)前登錄用戶(hù)信息的多種方式,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2025-03-03
Java報(bào)錯(cuò)狀態(tài)碼快速定位與解決方法
在日常開(kāi)發(fā)中Java程序員最頭疼的問(wèn)題之一就是遇到各種報(bào)錯(cuò)狀態(tài)碼,這些狀態(tài)碼就像謎語(yǔ)一樣讓人摸不著頭腦,比如突然蹦出一個(gè)500或者404,新手可能會(huì)直接懵掉,別擔(dān)心!這篇文章會(huì)帶你徹底搞懂Java報(bào)錯(cuò)狀態(tài)碼的來(lái)龍去脈,需要的朋友可以參考下2025-05-05
JavaWeb中Servlet的生命周期及線(xiàn)程安全問(wèn)題詳解
這篇文章主要介紹了JavaWeb中Servlet的生命周期及線(xiàn)程安全問(wèn)題詳解,Servlet?生命周期可被定義為從創(chuàng)建直到毀滅的整個(gè)過(guò)程,Servlet體系結(jié)構(gòu)是建立在Java多線(xiàn)程機(jī)制之上的,它的生命周期是由Web容器負(fù)責(zé)的,需要的朋友可以參考下2024-01-01
Feign如何解決服務(wù)之間調(diào)用傳遞token
這篇文章主要介紹了Feign如何解決服務(wù)之間調(diào)用傳遞token,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-03-03
使用SpringBoot簡(jiǎn)單實(shí)現(xiàn)無(wú)感知的刷新 Token功能
實(shí)現(xiàn)無(wú)感知的刷新 Token 是一種提升用戶(hù)體驗(yàn)的常用技術(shù),可以在用戶(hù)使用應(yīng)用時(shí)自動(dòng)更新 Token,無(wú)需用戶(hù)手動(dòng)干預(yù),這種技術(shù)在需要長(zhǎng)時(shí)間保持用戶(hù)登錄狀態(tài)的應(yīng)用中非常有用,以下是使用Spring Boot實(shí)現(xiàn)無(wú)感知刷新Token的一個(gè)場(chǎng)景案例和相應(yīng)的示例代碼2024-09-09

