元字符:
\d : 匹配任意一个数字,0~9 中的任意一个
\s : 匹配任意一个空白字符 比如:空格 回车 tab
\b : 匹配一个单词边界,不匹配任何字符
\w : 匹配任意一个字符( 字母、 数字、下划线 ) . : 匹配任意一个字符,除了换行符( \n )
\n : 查找换行符
\u : 通常用来匹配汉字
表达式 "\d","\s","\b","\w",对应的大写字母表示相反的意义 如:\D 匹配所有的非数字字符
量词/限定符:
较为常用的包括: “+”, “*”,以及 “?”。其中,“+”元字符规定其前导字符必须在目标对象中连续出现一次或多次,“*”元字符规定其前导字符必须在目标对象中出现零次或连续多次,而“?”元字符规定其前导对象必须在目标对象中连续出现零次或一次。
下面,就让我们来看一下正则表达式元字符的具体应用。
/fo+/
因为上述正则表达式中包含“+”元字符,表示可以与目标对象中的 “fo”, “foo”, 或者 “fooo” 等在字母f后面连续出现一个或多个字母o的字符串相匹配。
/eg*/
因为上述正则表达式中包含“*”元字符,表示可以与目标对象中的 “e”, “eg” 或者 “egg” 等在字母e后面连续出现零个或多个字母g的字符串相匹配。
/Wi?/
因为上述正则表达式中包含“?”元字符,表示可以与目标对象中的 “W”, 或者 “Wi”,等在字母i后面连续出现零个或一个字母 i 的字符串相匹配。
除了元字符之外,用户还可以精确指定模式在匹配对象中出现的频率。例如,
/jim{2,6}/
上述正则表达式规定字符m可以在匹配对象中连续出现2-6次,因此,上述正则表达式可以同jimmy或jimmmmmy等字符串相匹配。
如果/jim{2}/表示只匹配两个 jimmy
/[0-9]/表示匹配0-9之间的数字与/d相同中括号内可以写字母符号数字等
^n : 匹配任何开头为 n 的字符串。
n$ : 匹配任何结尾为 n 的字符串。
其他:
| : 匹配左边或者右边
\ : 转义符 特殊标点符号,在前面加 \ 后,就代表该符号本身
^ 要匹配 "^" 字符本身,请使用 \^
( ) 要匹配小括号本身,请使用 \( 和 \)其他特殊标点符号 [ ] { } . ? + * |
var reg2=/\s{1,}/g;//匹配1到N位空白字符;{1,}等同于+
RegExp(正则表达式)的方法;
test:检索字符串中指定的值 返回 true 或 false reg.test(str);
exec: 检索字符串返回查找结果的第一个值 reg.exec(str);
test使用方法 RegExpObject.test(string)
如果字符串 string 中含有与 RegExpObject 匹配的文本,则返回 true,否则返回 false。
var reg0=new RegExp(“a","g"); 等同于 var reg1 = /a/g;
g 为可选字符串,包含属性g、i 和 m
g:代表全局匹配 (继续往下匹配)
i:代表不区分大小写匹配
m:代表多行匹配,只对^和$模式有用
console.log(reg0.test("abcd"));
网友评论