正则表达式¶
\\d¶
数字
* + ?¶
表示一个或N个字符重复出现的次数。分别表示没有或更多,一次或更多,没有或一次。
{}¶
表示一个重复的具体范围,个数。
ab{4}:表示一个字符串有一个a跟着4个b ("abbbb")。
ab{1,}:表示一个字符串有一个a跟着至少一个b("ab","abb","abbb",...)
ab{3,4}:表示一个字符串有一个a跟着3到4个b("abbb","abbbb")
?和{0,1}都表示没有或者一个
+和{1,}都表示一个或更多
[]¶
表示括号内的众多字符中,选择1-N个括号内的符号语法的字符作为结果
[ab]:表示字符串有一个a或b
[a-d]:表示一个字符串包含小写的a到d中的一个,相当于a或b或c或d
[0-9]:表示有一个数字
(?: ... )?¶
...整个是可选的,允许为空。
练习¶
限制两位小数,小数点前面最多输入9位,整个字符串可为空。
^(?:[0-9]{1,9}(\\.[0-9]{0,2})?)?$
¥开头,后面数字最多有一个小数点:
^¥[0-9]+([.]{0,1}[0-9]*){0,1}$保留5位小数:
^[0-9]+(\\.[0-9]{0,5})?$只有一个小数点:
^[0-9]+([.]{0,1}[0-9]*){0,1}$
^(1|0)\\d{11}$|^\\d{6}[1-9]\\d{2}0$
1或者0+11位数字。或者6位数字+1位1到9之间的数字+2位数字+0。4位及以下的数字字母组合:
^[a-zA-Z0-9]{1,4}$,它匹配的是由1到4个字母或数字组成的字符串。^表示字符串的开始,$表示字符串的结束,[a-zA-Z0-9]表示一个字母或数字,{1,4}表示前面的元素可以出现1到4次。
小括号()¶
提高优先级