基础语法
" ^ "指出一个字符串的开始
" $ "指出一个字符串的结束
" \" 将下一个字符标记为一个特殊字符、或一个原义字符、或一个向后引用、或一个八进制转义符
"^abc" :匹配所有以"abc" 开始的字符串(例如:"abc","abccba")
"abc$":匹配所有以"abc" 结尾的字符串(例如:"gggabc","reddcba")
"^abc$":匹配开始和结尾都为"abc"的字符串(例如:"abc")
"abc":没有任何字符,匹配任何包含"abc"的字符串(例如:"aaaabccc","abc123")
"n":匹配n "\n":匹配换行符"\/"这里是\ he / 连在一起写,匹配" / " 字符
" * " 匹配前面的子表达式零次或多次
" + " 匹配前面的子表达式一次或多次
" ? " 匹配前面的子表达式零次或一次
"ac*":匹配字符串其中一个a后面跟着零个或若干个c (例如:"accc","abbb")
"ac+":匹配字符串其中一个a后面跟着至少一个c或者多个(例如:"ac","acccccccc")
"ac?":匹配字符串其中一个a后面跟着零个或者一个c (例如:"a","ac")
"a?c+$":匹配字符串的末尾有零个或一个a跟着一个或多个c (例如:"ac","acccccc",''c'',"ccccccc")
" {n} " n为非负整数,匹配n次
" {n,} " n为非负整数,匹配至少n次
" {n,m} " n,m为非负整数,最少匹配n次最多匹配m次
"ab{3}":表示一个字符串有一个a后面跟随2个b (例如:"abb","abbbbb")
"ab{3,}":表示一个字符串有一个a后面跟随至少2个b (例如:"abb","abbb")
"ab{3,6}":表示一个字符串有一个a后面跟随3到6个b (例如:"abbb","abbbb","abbbb")
" | " 表示"或"
" ." 表示任何字符
"a|b":表示一个字符串里有a 或者b (例如:"a","b","ab","abc")
"a.":表示一个字符串有一个a 后面跟着一个任意字符(例如:"a1","a456","avv")
方括号里用"^"表示不希望出现的字符
" [abc]" :表示字符集合,表示一个字符串有一个"a"或"b"或"c"等价于[z|b|c]
" [^abc]" : 表示一个字符串中不应该出现abc,即是匹配未包含改集合的任意字符
" [az]" :表示一个字符串中存在一个a和z之间的所有字母
" [0-9]" :表示一个字符串中存在一个0和9之间的所有数字
" [^az]" :表示一个字符串中不应该出现a到z之间的任意一个字母
"^[a-zA-Z]" :表示一个字符串中以字母开头
"[0-9]%":表示一个百分号前有一个的数字;
" \d " 匹配一个数字字符,等价[0-9]
" \D " 匹配一个非数字字符,等价[^0-9]
" \f" 匹配一个换页符,等价\x0c和\cL
" \n " 匹配一个换行符。等价于\x0a和\cJ
" \r " 匹配一个回车符。等价于\x0d和\cM
" \s " 匹配任何空白字符,包括空格、制表符、换页符等等。等价于[ \f\n\r\t\v]
" \S" 匹配任何非空白字符。等价于[^ \f\n\r\t\v]
" \t" 匹配一个制表符。等价于\x09和\cI
" \v " 匹配一个垂直制表符。等价于\x0b和\cK
" \w" 匹配包括下划线的任何单词字符。等价于“ [A-Za-z0-9_]”
" \W" 匹配任何非单词字符。等价于“ [^A-Za-z0-9_]”
实例
/^[0-9]{1,20}$/
表示字符串全部由数字组成,即是匹配当前字符串是否是由全数字组成
[0-9] 表示字符的范围是0到9
{1,20}表示字符串长度至少为1,最多为20,字符串出现次数的范围
/^[a-zA-Z]{1}([a-zA-Z0-9._]){5,15}$/
可以用来验证登录名,首字母为字母,长度为至少6最多16
^[a-zA-Z]{1} 表示最开始的第一个首字母为字母
([a-zA-Z0-9._]){5,15} 这是首字母后面的即是从第二个字母开始要求至少再有5个最多15个由字母数字以及指定特殊字符组成的字符串
/^[1][3|4|5|8][0-9]\d{8}$/
可以用来验证手机号码,首字母为1,长度11,首尾都是数字
^[1] 第一个数字为1
[3|4|5|8] 第二个数字为3或者4或者5或者8
[0-9]\d{8} 匹配一个数字范围是0-9,匹配8次,所以至少要有8个数字。加起来就是11个
/^(\w){6,20}$/
验证密码
\w匹配任何非单词字符等价于“ [^A-Za-z0-9_]”
(\w){6,20} 匹配任何非单词字符,最少6个最多20个
java正则用法
Java的正则表达式是由java.util.regex的Pattern和Matcher类实现的。Pattern对象表示经编译的正则表达式。静态的compile( )方法负责将表示正则表达式的字符串编译成Pattern对象。
public class test{
Pattern pattern = Pattern.compile("\\w+");
Matcher matcher = pattern.matcher(example);
matcher.matches();
}
标签:字符,abc,匹配,正则表达式,基础,等价,一个,字符串
From: https://www.cnblogs.com/hasome/p/17698727.html