正则对象: 可以用在大多数高级语言中。
作用:
1) 用于字符串的查找(找文件名,在文件内部找内容)
2) 判断字符串与正则表达式是否匹配,用于表单验证。
以下是个人在工作和学习中总结的一些规则,供用的时候查找.
正则表达式规则:
符号 | 作用 |
[a-z] |
中括号表示一个字符,- 表示范围。a到z之间的一个字符 |
[xyz] |
是x或y或z 之间的一个字符 |
[^xyz] |
如果^符号出现在[]内部,表示取反。除了xyz之外的任何一个字符 |
\d |
表示数字,\D表示非数字 |
\w |
表示单词,包括[a-zA-Z0-9_] \W 表示非单词 |
. |
通配符 表示匹配任意的一个字符。如果要使用点号,需要转义\. |
() |
代表分组 |
{n} |
限制它前面的字符出现n次,如:\d{3} 表示出现3个数字 |
{n,} |
限制它前面的字符大于等于n次 |
{n,m} |
限制它前面的字符大于等于n次,小于等于m次,包头又包尾 |
+ |
限制它前面的字符出现1~n次 |
* |
限制它前面的字符出现0~n次 |
? |
限制它前面的字符出现0~1次 |
| |
或者,几个字符串出现其中的一个 |
^ |
如果出现在正则表达式的开头,表示匹配开头 |
$ |
表示匹配结尾,^和$如果两个同时,表示精确匹配。 JS中默认是模糊匹配 |
正则表达式举例:
正则表达式 |
匹配字符串 |
\d{3} |
包含3个数字即可:a123b |
^\d{3} |
以3个数字开头:123b |
\d{3}$ |
以3个数字结尾:a123 |
^\d{3}$ |
必须是3个数字:123 |
[a-d] |
小写的a到d中的一个字符,中括号表示匹配1个字符 |
[xyz] |
x或y或z |
ab{2} |
a后面出现2次b:abb |
ab{2,} |
a后面出现2次及以上的b:abb或abbb或abbbb |
ab{3,5} |
a后面出现3~5次b:abbb或abbbb或abbbbb |
ab+ |
a后面出现1~n次b:ab或abb或abbb |
ab* |
a后面出现0~n次b:a或ab或 abbb |
ab? |
a后面出现0~1次b:a或ab |
hi|hello |
字符串里有hi或者hello |
(b|cd)ef |
表示bef或cdef |
^.{3}$ |
表示有任意三个字符的字符串 |
[^a-zA-Z] |
中括号内部的^,表示不出现,即不出现:大小写字母 |