跳转至

正则表达式

\\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次。

小括号()

提高优先级