[英]Masking Phone Number in Java with second character and last four characters printed with regular expressions
[英]Regular Expressions Phone number must not start with 555
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class MatchPhoneNumbers {
public static void main(String[] args) {
String sPhoneNumber = "5568889999";
// String sPhoneNumber = "605-88899991";
// String sPhoneNumber = "605-888999A";
Pattern pattern = Pattern.compile("^(?![5][5][5]).*$&\\d([2-9]{9})");
// Pattern pattern = Pattern.compile("^[^555]\\d{7}|\\d([2-9]{9})");
// ^[^0-9]+$
Matcher matcher = pattern.matcher(sPhoneNumber);
if (matcher.matches()) {
System.out.println("Phone Number Valid");
} else {
System.out.println("Phone Number must be in the form XXXXXXXXXX");
}
}
}
我希望返回的電話號碼在我輸入556時有效,並且僅在前3位為555時才返回false。我也不想讓前一位為0或1。如何實現此目的?
要匹配您的數字格式,您可以使用:
在Java中:
^(?![01]|555)\\\\d{10}$
那將匹配:
^
字符串的開頭 (?!
斷言以下內容的否定超前行為不是
[01]
匹配0或1 |
要么 555
字面匹配 )
關閉負面的前瞻 \\d{10}
匹配10位數字 $
字符串的結尾
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.