标签:and split focus express 括号 空白 phone tde pre
1. [abc]:代表a或者b,或者c字符中的一个。 2. [^abc]:代表除a,b,c以外的任何字符。 3. [a-z]:代表a-z的所有小写字符中的一个。 4. [A-Z]:代表A-Z的所有大写字符中的一个。 5. [0-9]:代表0-9之间的某一个数字字符。 6. [a-zA-Z0-9]:代表a-z或者A-Z或者0-9之间的任意一个字符。 7. [a-dm-p]:a 到 d 或 m 到 p之间的任意一个字符。
/** * 字符类 */ public class RegTestDemo01 { public static void main(String[] args) { String str = "oad"; //1.验证str是否以h开头,以d结尾,中间是a,e,i,o,u中某个字符 System.out.println(str.matches("h[aeiou]d")); //2.验证str是否以h开头,以d结尾,中间不是a,e,i,o,u中的某个字符 System.out.println(str.matches("h[^aeiou]d")); //3.验证str是否a-z的任何一个小写字符开头,后跟ad System.out.println(str.matches("[a-z]ad")); //4.验证str是否以a-d或者m-p之间某个字符开头,后跟ad System.out.println(str.matches("[a-dm-p]ad")); } }
1. "." : 匹配任何字符。 2. "\d":任何数字[0-9]的简写; 3. "\D":任何非数字[^0-9]的简写; 4. "\s": 空白字符:[ \t\n\x0B\f\r] 的简写 5. "\S": 非空白字符:[^\s] 的简写 6. "\w":单词字符:[a-zA-Z_0-9]的简写 7. "\W":非单词字符:[^\w]
/** * 预定义字符 */ public class RegTestDemo03 { public static void main(String[] args) { String str = "had."; //1.验证str是否3位数字 System.out.println(str.matches("\\d\\d\\d")); //2.验证手机号:1开头,第二位:3/5/8,剩下9位都是0-9的数字 String phone = "18600363521"; System.out.println(phone.matches("1[358]\\d\\d\\d\\d\\d\\d\\d\\d\\d")); //3.验证字符串是否以h开头,以d结尾,中间是任何一个字符 System.out.println(str.matches("h.d")); //4.验证str是否是:"had." System.out.println(str.matches("had\\."));//\\. 就代表内容"." } }
1. X? : 0次或1次 2. X* : 0次到多次 3. X+ : 1次或多次 4. X{n} : 恰好n次 5. X{n,} : 至少n次 6. X{n,m}: n到m次(n和m都是包含的)
/** * 数量词 */ public class RegTestDemo04 { public static void main(String[] args) { String str = "1358654234567"; //1.验证str是否是三位数字 System.out.println(str.matches("\\d{3}")); //2.验证str是否是多位数字 System.out.println(str.matches("\\d{2,}")); //3.验证str是否是手机号:1开头,第二位:3/5/8,剩下9位都是0-9的数字 String phone = "18600363521"; System.out.println(phone.matches("1[358]\\d{9}")); //4.验证小数:必须出现小数点,但是只能出现1次 String num = "4.13"; System.out.println(num.matches("\\d+\\.\\d+")); //5.验证小数:小数点可以不出现,也可以出现1次 System.out.println(num.matches("\\d+\\.?\\d+")); //6.验证小数:要求匹配:+3、+3.、+3.14、+3.14、-3 System.out.println(num.matches("[+-]?\\d+\\.?\\d*")); //7.验证qq号码:1).5--15位;2).全部是数字;3).第一位不是0 String qq = "359614724"; System.out.println(qq.matches("[1-9]\\d{4,14}")); } }
() 分组符号 /** * 分组括号 */ public class RegTestDemo05 { public static void main(String[] args) { String str = "DG8FV-B9TKY-FRT9J-99899-XPQ4G"; //验证这个序列号:分为5组,每组之间使用-隔开,每组由5位A-Z或者0-9的字符组成 System.out.println(str.matches("([A-Z0-9]{5}-){4}[A-Z0-9]{5}")); } }
public String[] split(String 切割符); /** * String的split方法 * RegulationExpression regex */ public class RegTestDemo06 { public static void main(String[] args) { String str = "18--4+++++567+++99------56"; //切割字符串 String[] split = str.split("[+-]+"); System.out.println(Arrays.toString(split)); } } /** * String的replaceAll方法 * RegulationExpression regex */ public class RegTestDemo07 { public static void main(String[] args) { String str = "jfdk432jfdk2jk24354j47jk5l31324"; //将字符串中的数字替换为*,如果相邻都是数字,只要一个* String newStr = str.replaceAll("\\d+", "*"); System.out.println(newStr); } }
标签:and split focus express 括号 空白 phone tde pre
原文地址:https://www.cnblogs.com/xiaozhang666/p/13268634.html