正则表达式
package com.wdzl.demo01;
public class TestRegx {
public static void main(String[] args) {
String s1 = "3";
String regex = "\\d";
System.out.println("数字:"+s1.matches(regex));
String s2 = "a";
regex = "\\p{Lower}";
System.out.println("小写字母:"+s2.matches(regex));
String s3 = "X";
regex = "\\p{Upper}";
System.out.println("大写字母:"+s3.matches(regex));
String s4 = "d";
regex = "[a-zA-Z]";
System.out.println("任意一个大小写字母:"+s4.matches(regex));
String s5 = ";";
regex = "[a-zA-Z0-9_;]";
System.out.println("任意一个数字字母下划线分号:"+s5.matches(regex));
String s6 = "\f";
regex = "\\s";
System.out.println("空白字符:"+s6.matches(regex));
String s7 = "^";
regex = "\\D";
System.out.println("任意一个非数字字符:"+s7.matches(regex));
String s8 = "3535345";
regex = "\\d*";
System.out.println("任意0个或多个数字:"+s8.matches(regex));
String s9 = "3";
regex = "\\d?";
System.out.println("任意0个或1个数字:"+s9.matches(regex));
String s10 = "4534";
regex = "\\d+";
System.out.println("任意1个或多个数字:"+s10.matches(regex));
String s11 = "123";
regex = "\\d{3,10}";
System.out.println("任意n~m个数字:"+s11.matches(regex));
String s12 = "12345";
regex = "\\d{6}";
System.out.println("任意6个数字:"+s12.matches(regex));
String s13 = "1234534322";
regex = "\\d{6,}";
System.out.println("任意至少6个数字:"+s13.matches(regex));
String s14 = "3faea";
regex = "[a-zA-Z_]\\w{2,5}";
System.out.println("包含数字字母下划线,不能以数字3~6开头:"+s14.matches(regex));
String s15 = "029-12345678910";
String regex1 = "(029|0374)-\\d{11}";
System.out.println("电话号码:"+s15.matches(regex1));
}
}
package com.wdzl.homework;
import java.util.Scanner;
public class TestRegex {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
座机要求:以0开头,0后面可以2到3位数字,然后是中划线-,
第一个?表示-可有可无,第二个?表示(0\\d{2,3}-?)可有可无,然后是7到8位数字。
String regex = "(0\\d{2,3}-?)?\\d{7,8}";
String tel1 = "0121234567";
String tel2 = "012-1234567";
String tel3 = "1234567";
System.out.println("请输入一个电话号码:");
System.out.println(tel1.matches(regex));
System.out.println(tel2.matches(regex));
System.out.println(tel3.matches(regex));
test(args);
}
public static void test(String[] args) {
String regex = "[\\w&&[^\\d]]\\w{2,9}";
String username = "sszhn";
System.out.println(username.matches(regex));
int count = 0;
if(username.replaceAll("\\d+", "").length()<username.length()) {
count++;
}
if(username.contains("_")) {
count++;
}
if(username.replaceAll("[a-zA-Z]+", "").length()<username.length()) {
count++;
}
System.out.println(count);
}
}