Im folgenden Code versuche ich, die Ausgabe zu erhalten, die unterschiedliche Formatierung von Telefonnummern und wenn es entweder gültig ist oder nicht. Ich habe alles außer dem Java Regular Expression-Code in Zeile 11 das String-Muster herausgefunden. ErstellenJava Reguläre Ausdrücke zu Validieren Telefonnummern
import java.util.regex.*;
public class MatchPhoneNumbers {
public static void main(String[] args) {
String[] testStrings = {
/* Following are valid phone number examples */
"(123)4567890", "1234567890", "123-456-7890", "(123)456-7890",
/* Following are invalid phone numbers */
"(1234567890)","123)4567890", "12345678901", "(1)234567890",
"(123)-4567890", "1", "12-3456-7890", "123-4567", "Hello world"};
// TODO: Modify the following line. Use your regular expression here.
String pattern = "^/d(?:-/d{3}){3}/d$";
// current pattern recognizes any string of digits
// Apply regular expression to each test string
for(String inputString : testStrings) {
System.out.print(inputString + ": ");
if (inputString.matches(pattern)) {
System.out.println("Valid");
} else {
System.out.println("Invalid");
}
}
}
}
Mögliche Duplikat [Eine umfassende regex für Telefonnummer Validierung] (http://stackoverflow.com/questions/123559/a-comprehensive-regex-fuer-handy-nummer-validation) – nullpointer
sind diese 4 das einzig gültige Format? andere als die als ungültig angesehen? Erstellen Sie einfach Regex für jede 4 von ihnen dann – Baby
Beachten Sie, dass das Atom, das eine Ziffer übereinstimmt, '\ d' ist, nicht'/d', und Sie müssen es als '\\ d' schreiben, wenn Sie in einem sind 'String' Literal. –