![](/img/trans.png)
[英]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.