簡體   English   中英

使用String方法拆分驗證(xxx)xxx-xxxx中的電話號碼

[英]validating Phone number in from of (xxx) xxx-xxxx using String method split only

我必須以(xxx) xxx-xxxx的格式拆分電話號碼,我搜索了一下,但我找到的解決方案是關於使用正則表達式,但我被要求使用類String split方法。 我在下面顯示的一個小程序中解決了這個問題但有沒有辦法用更少的代碼行完成它?

package StringReview;
import java.util.Scanner;

public class StringExercise {

    static Scanner scanner = new Scanner (System.in);
    static String [] number;
    static String array[] ;

    public static void main(String[] args) {

        System.out.println("Enter a phone number: with () and -");
        String phoneNumber = scanner.nextLine();
        array = phoneNumber.split(" ");
        for(String st : array ){
            if(st.contains("-")){
                    number=cut(st);
            }else
                System.out.println(st);             
        }
        for (String str : number){
            System.out.println(str);
        }
    }

    private static String[] cut(String st) {
         return st.split("-");
    }
}
    String phoneNumber = "(123)456-7890";
    String[] parts = phoneNumber.split("\\D+");
    for(String part : parts) {
        System.out.println(part);
    }
String input = "(xxx) xxx-xxxx"
String[] arrFirst = input.split(" ");
String[] arrSecond = arrFirst[1].split("-");

System.out.println(arrFirst[0] + " " +arrSecond[0] + "-" + arrSecond[1]);
//By Benjamin Manford

import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class tel {

  public static boolean validatePhone(String phone){
      //the range of numbers is between 9 and 10. you can make it any range you want
            return phone.matches("^[0-9]{9,10}$");
    }

public static void main(String[] args) {


    Scanner input = new Scanner(System.in);
  System.out.print("Enter Phone Number: ");
            String phone = input.nextLine();
            while(validatePhone(phone) != true) {
                    System.out.print("Invalid PhoneNumber!");
                    System.out.println();
                    System.out.print("Enter Phone Number: ");
                    phone = input.nextLine();
                    System.out.println("Correct telephone number");
            }


}
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM