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á)式在線測(cè)試工具:
http://tools.jb51.net/regex/javascript
正則表達(dá)式在線生成工具:
http://tools.jb51.net/regex/create_reg
更多關(guān)于java算法相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Java正則表達(dá)式技巧大全》、《Java數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Java操作DOM節(jié)點(diǎn)技巧總結(jié)》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總》
希望本文所述對(duì)大家java程序設(shè)計(jì)有所幫助。
- PHP提取字符串中的手機(jī)號(hào)正則表達(dá)式怎么寫(xiě)
- 正則表達(dá)式驗(yàn)證用戶名、密碼、手機(jī)號(hào)碼、身份證(推薦)
- Android 正則表達(dá)式驗(yàn)證手機(jī)號(hào)、姓名(包含少數(shù)民族)、身份證號(hào)
- iOS 正則表達(dá)式判斷手機(jī)號(hào)碼、固話
- JS正則表達(dá)式驗(yàn)證賬號(hào)、手機(jī)號(hào)、電話和郵箱是否合法
- 一個(gè)容易犯錯(cuò)的js手機(jī)號(hào)碼驗(yàn)證正則表達(dá)式(推薦)
- Android判斷11位手機(jī)號(hào)碼的方法(正則表達(dá)式)
- Android 2018最新手機(jī)號(hào)驗(yàn)證正則表達(dá)式方法
相關(guān)文章
javax.validation自定義日期范圍校驗(yàn)注解操作
這篇文章主要介紹了javax.validation自定義日期范圍校驗(yàn)注解操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-09-09深入理解JVM之Class類文件結(jié)構(gòu)詳解
這篇文章主要介紹了深入理解JVM之Class類文件結(jié)構(gòu),結(jié)合實(shí)例形式詳細(xì)分析了Class類文件結(jié)構(gòu)相關(guān)概念、原理、結(jié)構(gòu)、常用方法與屬性,需要的朋友可以參考下2019-09-09jenkins如何通過(guò)pipeline部署springboot項(xiàng)目
為了提高SpringBoot項(xiàng)目的部署效率和規(guī)范性,建議將項(xiàng)目代碼和部署腳本分離,項(xiàng)目代碼倉(cāng)庫(kù)專注業(yè)務(wù)邏輯,構(gòu)建為jar包;另外設(shè)立獨(dú)立代碼倉(cāng)庫(kù)存放Jenkinsfile等部署配置文件,在Jenkins中配置pipeline,自動(dòng)拉取項(xiàng)目代碼進(jìn)行構(gòu)建和部署2024-09-09Java微信公眾號(hào)開(kāi)發(fā)之通過(guò)微信公眾號(hào)獲取用戶信息
這篇文章主要介紹了Java微信公眾號(hào)開(kāi)發(fā)之通過(guò)微信公眾號(hào)獲取用戶信息,需要的朋友可以參考下2017-05-05