关于正则表达式的一些规则:
-
^:与字符串开始的地方匹配,自身不匹配任何字符
-
$:与字符串结束的地方匹配,自身不匹配任何字符
-
\r:回车
-
\n:换行
-
\d:任意一个数字(0-9)
-
\w:任意一个字母或数字下划线,也就是A-Z,a-z,0-9,_中的任意一个
-
\s:包括空格,制表符,换页符等空白字符的其中任意一个
-
. :小数点可以匹配除了换行符(\n)以外任一一个字符
“a.\d”匹配“aaa100”得到的结果是“aa1”:开始于1,结束于4
-
使用[ ]表示包含一系列字符,能够匹配其中任意一个字符串
-
用[ ^ ]包含一系列字符,则能够匹配其中字符串之外的任意一个字符
-
*:匹配前面的子表达式 0次或者多次
-
+:匹配前面的子表达式1次或多次
[0-9] * 表示任意多个数字
-
{n} :匹配确定的 n 次
-
{n, }:最少匹配 n 次
-
{n,m}:最少匹配 n 次,最多匹配 m 次
- “[abc][abc]”匹配“dca1b”结果是“ca”:匹配位置是:开始于1,结束于3 - "[^ abc]"匹配 “abc123” 结果是“1”:匹配位置是:开始于3,结束于4
常见题目:
-
(用户名)一个字符串是以 字母开头,后面是字母数字下划线,长度 6-30
const reg1 = /^ [a-zA-Z]\w{5,29}$/
-
邮政编码(6位数)
const reg2 = / \d{6}/ -
长度大1的小写英文字符串
const reg3 = /^ [a-z]+$/ -
日期格式
const reg4 = /^ \d{4}-\d{1,2}-\d{1,2}$/ -
简单 IP 地址匹配
const reg5 = /^\d+.\d+.\d+.\d+ $/
. 用\给转译出来了,要不是是 . 自带的正则转译,这里表示直接与.进行匹配