我有一些類型的電話號碼是123-1234567和(321)1234567,然後我做了電話號碼:正則表達式的電話號碼
123-1234567,
Area Code = 123,
Number = 1234567
(321) 1234567,
Area Code = 321,
Number = 1234567
我使用模式(.) (\\ d +) (.) (\\ d +)
,但結果不匹配的123-1234567
,我使用
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Test {
private static Pattern telp = Pattern.compile("(.)(\\d+)(.)(\\d+)");
public static void testNomor(String s){
Matcher m = telp.matcher(s);
if (m.matches()) {
System.out.println(s + "\nArea Code = " +m.group(2)+"\nPhone Number = " + m.group(4) + "\n");
} else {
System.out.println(s+" phone number is invalid");
}
}
public static void main(String[] args) {
testNomor("(321)1234567");
testNomor("123-1234567");
testNomor("(1433)-123 456");
}
}
哇。你完全沒有做過研究,是嗎?我花了15秒時間向Google詢問電話號碼的正則表達式並獲得了幾次匹配 –