TShopping

 找回密碼
 註冊
搜索
查看: 1598|回復: 1
打印 上一主題 下一主題

[教學] Android 電話號碼 手機號碼等 詳細 正則表達式

[複製鏈接]
跳轉到指定樓層
1#
發表於 2015-1-9 15:25:50 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
 
Push to Facebook

電話號碼正則表達式
(支持手機號碼,3-4位區號,7-8位直播號碼,1-4位分機號)
((\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}))$)
匹配格式:
11位手機號碼
3-4位區號,7-8位直播號碼,1-4位分機號
如:12345678901、1234-12345678-1234

"^\d+$" //非負整數(正整數+ 0)  
"^[0-9]*[1-9][0-9]*$" //正整數  
"^((-\d+) |(0+))$" //非正整數(負整數+ 0)  
"^-[0-9]*[1-9][0-9]*$" //負整數  
"^-?\ d+$" //整數  
"^\d+(\.\d+)?$" //非負浮點數(正浮點數+ 0)  
"^(([0-9]+\.[0-9]* [1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1 -9][0-9]*))$" //正浮點數  
"^((-\d+(\.\d+)?)|(0+(\.0+)?))$" //非正浮點數(負浮點數+ 0)  
"^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9] *[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$" //負浮點  
數  
"^(-?\d+)(\.\d+)?$" //浮點數  
"^[A-Za-z]+$" //由26個英文字母組成的字符串  
"^[AZ] +$" //由26個英文字母的大寫組成的字符串  
"^[az]+$" //由26個英文字母的小寫組成的字符串  
"^[A-Za-z0-9]+$ " //由數字和26個英文字母組成的字符串  
"^\w+$" //由數字、26個英文字母或者下劃線組成的字符串  
"^[\w-]+(\.[\w- ]+)*@[\w-]+(\.[\w-]+)+$" //email地址  
"^[a-zA-z]+://(\w+(-\w+)* )(\.(\w+(-\w+)*))*(\?\S*)?$" //url  
/^13\d{9}$/gi手機號正則表達式  
public static bool IsValidMobileNo( string MobileNo)  
{  
  const string regPattern = @"^(130|131|132|133|134|135|136|137|138|139)\d{8}$";  
  return Regex.IsMatch(MobileNo, regPattern);  
}  
正則表達式--驗證手機號碼:13[0-9]{9}  
實現手機號前帶86或是+86的情況:^((\+86)|(86))?(13)\d {9}$  
電話號碼與手機號碼同時驗證:(^(\d{3,4}-)?\d{7,8})$|(13[0-9]{9})  
提取信息中的網絡鏈接:(h|H)(r|R)(e|E)(f|F) *= *('|")?(\w|\\|\/|\.)+('|" | *|>)?   
提取信息中的郵件地址:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*   
提取信息中的圖片鏈接:(s|S)(r|R)(c|C) *= *('|")?(\w|\\|\/|\.)+('|"| *|>)?  
提取信息中的IP地址:(\d+)\.(\d+)\.(\d+)\.(\d+)      
提取信息中的中國手機號碼:(86)*0*13\ d{9}      
提取信息中的中國固定電話號碼:(\(\d{3,4}\)|\d{3,4}-|\s)?\d{8}      
提取信息中的中國電話號碼(包括移動和固定電話):(\(\d{3,4}\)|\d{3,4}-|\s)?\d{7,14}      
提取信息中的中國郵政編碼: [1-9]{1}(\d+){5}      
提取信息中的中國身份證號碼:\d{18}|\d{15}      
提取信息中的整數:\d+      
提取信息中的浮點數(即小數):(-?\d*)\.?\d+      
提取信息中的任何數字:(-?\d*)(\.\d+)?   
提取信息中的中文字符串:[\u4e00-\ u9fa5]*      
提取信息中的雙字節字符串(漢字):[^\x00-\xff]*
========================= =======================================
手機號為什麼以13開頭2008-02-16 22:06大家都知道以前電信移動郵政還沒有分家阿,郵電資源是郵電部(現信息產業部)統一調度的。在分配號段的時候,做了一些細緻的規劃,大體是這樣:  
10開頭,電信服務號碼,如103國際半自動掛號,108國際對方付費電話,10000中國電信服務中心,10010中國聯通服務中心,10050中國鐵通服務中心,10060中國網通服務中心,10070中國衛通服務中心,10086中國移動服務中心等等  
11開頭,賦予特種服務號碼,如110匪警,111電信內部測試,112報修,113、115國內人工長途掛號,114查號台,116國內人工長途查詢,117報時,119火警等  
12開頭,賦予民用特殊號碼,如120(醫院),121(天氣預報),122交通事故告警,12312保護知識產權舉報中心,12315消費投訴熱線,12319城建服務,12348法律諮詢,12358價格舉報中心,12365質量監督,12366納稅服務,12369環境保護投訴,126、 127、128、129尋呼台(BP機時代)  
所以分配到手機用戶時,以13開始做號段。後來分配130~133為聯通,134~139為移動,13800138000中國移動充值。
日前新推出號段:以153開始做號段分給聯通,以158、159開始做號段分給了移動。
以188開始做號段為TD-SCDMA制式的3G手機,將陸續有預先挑選出來的測試用戶使用以“188”為開頭的手機號碼,在包括北京、青島、廈門、保定等在內的幾大城市中率先試用TD-SCDMA網絡。
(查看日誌《用號碼以“188”開頭的TD-SCDMA制式手機體驗讀郵件、看手機電視等3G業務》)  
其他的特殊號段號碼有:  
16,聲訊類,如160中國電信工人信息服務接入碼,166語音信箱業務,167吉通計算機互聯網業務接入碼,168聲訊服務,中國電信公眾多媒體網接入碼等  
17,長途電話服務,如170國內長途全自動話費查詢台,173國內立接制長途半自動掛號台,176國內長途半自動查詢台,177國內長途半自動班長台,179IP語音服務接入碼等  
18,部分服務台,如180郵政服務,184郵政編碼查詢接入碼,185國家郵政局電話信息服務接入碼,186移動服務中心,188固定電話交費台,189中國電信業務受理特服台等(大多已停用,或換新號)  
19,尋呼接入,191聯通無線電人工尋呼接入碼,192聯通無線電自動尋呼接入碼等等  
20,30,電話卡服務  
另外,8、9開頭的號段部分也作電信及民用服務號碼  
95,金融及民用服務號碼,95501深圳發展銀行,95502永安財產保險,95505天安保險,95508廣州發展銀行,95511中國平安人壽,95512中國平安產險,95515合眾人壽,95516中國銀聯,95518中國人民保險,95519中國人壽保險,95522泰康人壽, 95528浦東發展銀行,95533中國建設銀行,95555招商銀行,95556中信銀行,95559交通銀行,95561興業銀行,95566中國銀行,95567中國新華人壽,95568中國民生銀行,95569安邦財產保險,95577華夏銀行, 95585中國聯合財保,95588中國工商銀行,95590中國大地財產保險,95595光大銀行,95596民生人壽保險,95599中國農業銀行,95598供電服務,96100民政服務,96118旅遊投訴,96178廉政投訴,96198農業信用聯社,96310城管執法,95105366中鐵快運,95105768海康人壽  
400,企業主被叫分攤付費電話業務,是一項由固網運營商推出的為被叫客戶提供一個全國范圍內的唯一400號碼,並把對該號碼的呼叫接至被叫客戶事先規定目的地(電話號碼或呼叫中心)的全國性智能網業務。企業申請了400業務,無疑將有效提高企業的市場形象,但是如果背後沒有呼叫中心作為支撐,400也就只是一個將來電轉移的號碼,其價值也大大降低。如:4006789000宅急送4008108000 DHL快遞4008111111順豐速運4008208388 UPS快遞4008861888聯邦快遞4008888400上海證券交易所  
800,為受話人集中付費業務,它的主要特徵是由被叫方(企業)集中支付話費,而主叫方(客戶)不支付任何費用。800電話的使用充分體現了企業“客戶至上”的先進理念,它在國外的使用已是十分普遍。
以上號碼均作分配,內容太多未詳細列出,部分號碼目前已經升級,如電信服務台,天氣預報,郵政服務台等等
010123444444   
01,02開頭的是3個開頭,其餘的是4個開頭   
01x北京   
02x廣州,上海,天津,重慶,瀋陽,南京,,武漢,成都   
03xx河北,河南,山西   
04xx遼寧,吉林,黑龍江,內蒙古   
05xx江蘇,山東,安徽,浙江,福建   
06xx這個保留?   
07xx江西,廣西,湖北   
08xx四川,貴州   
09xx甘肅青海新疆,陝西
1.忽略非數字的(只留下數字)   
2.判斷前兩個都是0,或86開頭,且大於11位,為國際編碼,國際編碼後如果是0,到第4步   
3.第一個是0,第二個非0,為國內編碼,   
4.根據上述我提供的得到身份
區號+座機號碼+分機號碼:regexp="^(0[0-9]{2,3}\-)?([2-9][0-9]{6,7})+(\-[ 0-9]{1,4})?$"
手機(中國移動手機號碼):regexp="^((\(\d{3}\))|(\d{3}\-))?13[456789]\d{8}|15[89] \d{8}"
所有手機號碼:regexp="^((\(\d{3}\))|(\d{3}\-))?13[0-9]\d{8}|15[89]\d {8}"(新添加了158,159兩個號段)

 

臉書網友討論
2#
發表於 2015-7-27 21:22:50 | 只看該作者
不错不错,楼主是个绝对高手












极品修真邪少

版主招募中

*滑块验证:
您需要登錄後才可以回帖 登錄 | 註冊 |

本版積分規則



Archiver|手機版|小黑屋|免責聲明|TShopping

GMT+8, 2024-4-20 09:00 , Processed in 0.060279 second(s), 21 queries .

本論壇言論純屬發表者個人意見,與 TShopping綜合論壇 立場無關 如有意見侵犯了您的權益 請寫信聯絡我們。

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表