當前位置:首頁 » 編程語言 » 手機號碼驗證java

手機號碼驗證java

發布時間: 2023-04-15 13:04:40

java 判斷號碼是手機還是固話

/**
* 驗證是否是手機號碼
*
* @param str
* @return
*/
public static boolean isPhone(String str) {
if (ValidationUtils.isEmpty(str)) {
return false;
}
Pattern pattern = Pattern.compile("^(1[3,4,5,7,8][0-9])\\d{8}$");
Matcher matcher = pattern.matcher(str);
boolean b = matcher.matches();
return b;
}
/**
* 是否是座機電話號碼
*
* @param str
* @return
*/
public static boolean isFixedLine(String str) {
if (ValidationUtils.isEmpty(str)) {
return false;
}
Pattern pattern = Pattern
.compile("^([0-9]{3}-?[0-9]{8})|([0-9]{4}-?[0-9]{7})$");
Matcher matcher = pattern.matcher(str);
boolean b = matcher.matches();
return b;
}

❷ java編程實現自定義異常判斷一個手機號碼的合法性

用正則判斷,

/**
*驗證手機號碼格式是否正確
*@parammobiles
*@returntrue表示正確false表示不正確
*/
(Stringmobiles){
Patternp=Pattern.compile("^((13[0-9])|(15[0-9])|(18[0-9]))\d{8}");
Matcherm=p.matcher(mobiles);
returnm.matches();
}

當然手機號碼好像還有17開頭的,對應的正則改一下就好

"^((13[0-9])|(15[0-9])|(18[0-9])|(17[0-9]))\d{8}"

然後在你的代碼裡面調用這個方法,如果結果為false,就throw new MyException(「手機號碼格式不正確」)一個異常。

異常定義可以去繼承Exception

/**
*CreatedbyKevinon2015/3/30.
*/
{

privateStringmsg;

publicMyException(Stringmsg){
super(msg);
this.msg=msg;
}


@Override
publicStringgetMessage(){
returnmsg;
}
}

❸ java簡訊驗證碼如何設置防重放

1、手機號碼限制:限制單個手機號碼每天的最大發送次數。超過次數不能發送簡訊,可以考慮將手機號碼加入黑名單,禁止1天。
2、簡訊發送時間間隔限制:限制同一個手機號碼重復發送的時間間隔。通寬飢常設置為60-120秒,前端做倒慎陵返計時限制,時間未到不能點擊發送簡訊按鈕,後汪扒台也做時間間隔限制,時間未到不能發送簡訊。

❹ Java中使用正則表達式驗證手機號碼,大家看我的代碼有什麼問題,沒得出正確的結果。

Patternp=Pattern.compile("^1[34578]\d{9}$");//改成這樣
Matcherm=p.matcher("15217855576");
System.out.println(m.matches());//true

❺ java簡訊驗證碼如何驗證

先創建一個驗證碼,通過簡訊代理發送到用戶指定的手機,待用戶提交後做對比,看驗證碼是否一致。

整體流程:

  1. 用戶輸入手機號碼,點擊獲取驗證碼

  2. 伺服器創建驗證碼,並通過簡訊代理商發送到用戶手機

  3. 用戶查看驗證碼,輸入提交

  4. 伺服器進行確認,反饋成功或者失敗。

❻ java里怎麼判斷用戶輸入的手機號是否合法

如果沒有其他要求,下面的就可以
^(13|15|18)\\d{9}$
表示以13或15或18開頭,後面9位數字結尾
public class SortTest {
public static void main(String[] args) {
String str="13020895785";
System.out.println(str.matches("^(13|15|18)\\d{9}$"));
}
}

❼ Java如何使用正則表達式驗證港澳台手機號碼是否有效

不知道港台手機號什麼格式:

\d:匹配一個數字字元。等價於[0-9]。

{n,m}:m和n均為非負整數,其中n<=m。最少匹配n次且最多匹配m次。

匹配手機號無非是純數字,是否達到一定位數

❽ 用Java驗證姓名,年齡,電話怎麼寫。


1、漢字驗證

這個方法改一下就行了喊敏梁

/**

*計算字元串長度.一個漢字的長度按2計算.如果給定的字元串為null,返回0.

*

*@paramstr

*待計算長度的字元串

*@return字元串長度

*/
publicstaticintstrlen(Stringstr){
if(str==null||str.length()<=0){
拿租return0;
}
intlen=0;
charc;
for(inti=str.length()-1;i>=0;i--){
c=str.charAt(i);
if((c>='0'&&c<='9')||(c>='a'&amp;&c<='z')||(c>='A'&&c<='Z')){//字母,數字
len++;
}else{
if(Character.isLetter(c)){//中文
len+=2;
}else{//符號或控制字元

len++;
}
}
}
returnlen;
}

2、電話

我給你個思路

就是把字元串轉化為數字,然後用try catch 如果呢異常就表明是數字,至於長度length一下就行了,



或用這個

郵編號碼:xxx.xxxx(都為數字)
固定電話號碼:xx-xxxx-xxxx(都為數字)
手機號碼:xxx-xxxx-xxxx(都為數字)
一般來說,基本的校驗功能留給頁面去處理,可以減輕伺服器的負擔。建議這些功能放在頁面完成。

java中的正則表達式:

/**
*java正則表達式來判斷是否EMAIL郵件
*
*@paramnumber
*待檢測字元串
*@return若是返回true,否則返回false
*/

importorg.apache.oro.text.regex.MalformedPatternException;
importorg.apache.oro.text.regex.Pattern;
importorg.apache.oro.text.regex.PatternCompiler;
importorg.apache.oro.text.regex.PatternMatcher;
importorg.apache.oro.text.regex.Perl5Compiler;
importorg.apache.oro.text.regex.Perl5Matcher;

(Stringnumber){
//*Regexp匹配模式
//StringpostCodeRegexp="([0-9]{3})+.([0-9]{4})+";//郵政編碼的匹配模式
//StringphoneRegexp="([0-9]{2})+-([0-9]{4})+-([0-9]{4})+";//固話的匹配模式
StringmobileRegexp="([0-9]{3})+-([0-9]{4})+-([0-9]{4})+";//手機的匹配模式

PatternCompilercompiler=newPerl5Compiler();
PatternMatchermatcher=newPerl5Matcher();
Patternpattern=null;

//Initializationofcompiler,matcher,andinputomitted;
try{
//pattern=compiler.compile(postCodeRegexp);
//pattern=compiler.compile(phoneRegexp);
pattern=compiler.compile(mobileRegexp);

}catch(MalformedPatternExceptione){
returnfalse;
}

if(matcher.matches(number,pattern))
returntrue;
else
return鄭運false;
}

3、年齡跟電話差不多,也是轉換為數字,然後比較一下是否大於120

❾ java如何判斷手機號碼是11為且第一位不是0且不是+86的形式

寫在前面:最好還是用正則表達式,簡單易懂,易於維護
===================================

//這個方法判斷是不是合法的手機號碼
public boolean isPhoneNumber(String phoneNumber){
//手機號碼長度
int phoneLength=phoneNumber.length();
//第一位是不是0
String phoneOne=phoneNumber.substring(0,1);
//是不是 +86形式
int is86=phoneNumber.indexOf("+86");
//是純數字 並且長度等於11 並且第一位不是0 並且 不包含+86
return isNumeric(phoneNumber)&&phoneLength==11&&!phoneOne.equals("0")&&is86==-1;
}

//這個方法判斷字元串是不是純數字
public static boolean isNumeric(String str){
Pattern pattern = Pattern.compile("[0-9]*");
Matcher isNum = pattern.matcher(str);
if( !isNum.matches() ){
return false;
}
return true;
}

熱點內容
安卓和蘋果哪個最保值 發布:2024-11-02 02:30:02 瀏覽:603
橋接的網關伺服器地址怎麼查 發布:2024-11-02 02:29:11 瀏覽:861
電腦里dns伺服器未響應咋辦 發布:2024-11-02 02:28:24 瀏覽:543
星與雲伺服器 發布:2024-11-02 02:27:49 瀏覽:205
centos升級python27 發布:2024-11-02 02:00:57 瀏覽:673
ue4未找到編譯器 發布:2024-11-02 01:46:08 瀏覽:155
python中的withopen 發布:2024-11-02 01:46:07 瀏覽:976
編程名人 發布:2024-11-02 01:42:18 瀏覽:867
伺服器電腦配置表 發布:2024-11-02 01:41:29 瀏覽:370
linux使用串口 發布:2024-11-02 01:37:11 瀏覽:702