正则表达式之java篇:
争取每天都有所学,然后都发表博客。方便以后自己对知识的管理。
1.正则表达式之字符集合。
正则表达式 说明
[abc] a、b、c中任意一个字符
[^abc] 除了a、b、c的任意字符
[a-z] a、b、c......、z中任意一个字符
[a-zA-Z0-9] a~z、A~Z、0-9中任意一个字符
[a-z&&[^bc]] a~z中除了bc以外的任意一个字符,&&为"与"
2.正则表达式之 预定义字符集。
正则表达式 说明
. 任意一个字符
\d 任意一个数字字符,相当于[0-9]
\w 单词字符,相当于 [a-zA-Z0-9_]
\s 空白字符,相当于[ \t \n \ xOB \f \r ]
\D 非数字字符
\W 非单词字符
\S 非空白字符
3.正则表达式之 数量词。
正则表达式 说明
X? 表示0个或1个X
X* 表示0个或任意多个X
X+ 表示1个到任意多个X(大于等于1个X)
X{n} 表示n个X
X{n,} 表示n到任意多个X(大于等于n个X)
X{n,m} 表示n个到m个X
4.正则表达式之 乱七八糟。
(1). 使用" ^ "表示开始,使用" $ "表示结束。
举例:比如 String regex1 = " \\w{8,10} " String regex2 = " ^\\w{8,10}$"
String str = "abcd1234_abcsd"
str.matches(regex1) 为true 。
str.matches(regex2) 为false。
(2). 使用" () "表示分组 括号内为一整体。
举例:+86 13838388438
(\+86)?\s*\d{11}
5.正则表达式之 常用API。
1.matches(String regex)
2.split(String regex) 这里需要注意 括号内为正则表达式 不是单纯的string
3.replaceAll(String regex,String replacement) 将字符串中匹配正则表达式的regex字符换成replacement。
注意:结合4.1判断。