• 招生咨詢(xún)熱線:4008-569-579 
  • 手機(jī)版
    用手機(jī)掃描二維碼直達(dá)商品手機(jī)版
招生咨詢(xún)熱線
4008-569-579
機(jī)構(gòu)主頁(yè) > 機(jī)構(gòu)新聞 > 如何鑒別非法的電話號(hào)碼
機(jī)構(gòu)主頁(yè) > 機(jī)構(gòu)新聞>如何鑒別非法的電話號(hào)碼

如何鑒別非法的電話號(hào)碼

來(lái)源:北京達(dá)內(nèi)教育        時(shí)間:2023-05-25        熱度:89℃        返回列表

【實(shí)例描述】

日常生活中經(jīng)常需要用戶(hù)錄入用戶(hù)信息或聯(lián)系方式,其中有一些數(shù)組的格式是固定的,程序處理邏輯也是按照這個(gè)格式來(lái)實(shí)現(xiàn)的,但是由于用戶(hù)輸入的是字符串,其靈活性較大,所以容易輸入錯(cuò)誤格式的數(shù)據(jù)。本實(shí)例將演示如何使用正則表達(dá)式來(lái)確定輸入的電話號(hào)碼格式是否匹配,實(shí)例的運(yùn)行效果如圖4.15 所示。


【實(shí)現(xiàn)過(guò)程】

(1)在Eclipse 中新建項(xiàng)目PhoneNumber,并在其中創(chuàng)建一個(gè)PhoneNumber.java 文件。在該類(lèi)的主方法中創(chuàng)建標(biāo)準(zhǔn)輸入流的掃描器對(duì)象,接收用戶(hù)輸入的用戶(hù)信息。核心代碼如下所示:

protected void do_button_actionPerformed(ActionEvent e) {

String text = phoneNumField.getText(); // 獲取用戶(hù)輸入

String info = check(text); // 對(duì)輸入文本進(jìn)行IP

驗(yàn)證

showMessageDialog(null, info); // 用對(duì)話框輸出驗(yàn)證結(jié)

}

(2)然后對(duì)電話號(hào)碼的正確性進(jìn)行驗(yàn)證,首先判斷字符串是否為空,然后再通過(guò)正則表達(dá)式對(duì)字符串進(jìn)行驗(yàn)證。這里要注意我們?cè)O(shè)定的區(qū)號(hào)為3 位,電話號(hào)碼為8 位。核心代碼如下所示:

public String check(String text){

if(text == null || text.isEmpty()){

return "請(qǐng)輸入電話號(hào)碼!";

}

// 定義正則表達(dá)式

String regex = "^\\d{3}-?\\d{8}|\\d{4}-?\\d{8}$";

// 判斷輸入數(shù)據(jù)是否為電話號(hào)碼

if(text.matches(regex)){

return text + "\n 是一個(gè)合法的電話號(hào)碼!";

}else{

return text + "\n 不是一個(gè)合法的電話號(hào)碼!";

}

}

【代碼解析】

本實(shí)例使用正則表達(dá)式對(duì)電話號(hào)碼進(jìn)行了格式匹配驗(yàn)證。正則表達(dá)式通常被用于判斷語(yǔ)句中,來(lái)檢查某一字符串是否滿(mǎn)足某一格式。它是含有一些特殊意義字符的字符串,這些特殊字符稱(chēng)為正則表達(dá)式的元字符。正則表達(dá)式中的元字符及其意義如表4-1 所示。


【知識(shí)擴(kuò)展】

一個(gè)Java 對(duì)象(字符串也是Java 對(duì)象)必須先初始化才能使用,否則編譯器會(huì)報(bào)告“使用的變量未初始化”錯(cuò)誤。

電話咨詢(xún)

電話咨詢(xún)

咨詢(xún)電話:
4008-569-579
回到頂部

回到頂部