javaScript中有关正则表达式的用法总结

时间:2021-10-10 06:40:10

js中处理正则表达式的类:RegExp

用法:

var reg=new RegExp("express");

或者:

var reg=/express/;

js中常用的6个方法:

test():是否存在

exec():返回查询值

match():得到查询的数组

search():返回搜索的位置

replace():替换

split():分割成数组

这些方法,里面的参数都是正则表达式。

js中常用的4大类:

简单类、负向类、组合类、范围类。

简单类:/[123]qqqq/gi:表示开头必须包含123

负向类:/[^123]qqqq/gi:表示开头不包含123

组合类:/[0-9a-z\n]/gi:表示是由数字、字母、换行符组成(无关顺序)

范围类:/[2-3]/gi:表示开头是2-3之间的数字

g:继续往下找:goto

i:不区分大小写:ignore

m:多行找

js中的元字符:    +  *   ?

+:  >或=1

*:  >或=0

?:0或1

比如:/lol+/:表示lo后面的l可以是1个或者多个!

元字符范围的确定

{n}:匹配确定的n个

{n,}:至少匹配n个

{n,m}:n<=m个

例如:

/\s{4,}/     表示“至少有4个以上的空格”

其他元字符

\s:单空格、tab符、换行符

\S:除单空格外

\d:0-9

\w:字母、数字、下划线

\W:除字母、数字、下划线

.   :除换行符外

比如

/\s+/:匹配一个或多个空格字符

/\d000/:总额达到千元的款项

js中的定位符:

^: 匹配输入字符串的开始位置。如果设置了 RegExp 对象的 Multiline 属性,^ 也匹配 '\n' 或 '\r' 之后的位置。

$: 匹配输入字符串的结束位置。如果设置了RegExp 对象的 Multiline 属性,$ 也匹配 '\n' 或 '\r' 之前的位置。

\b: 匹配一个单词边界,也就是指单词和空格间的位置。必须在开头或者结尾。

\B:必须在开头或者结尾之间,即非边界位置。

():整体

例如:

/^hello/    /hello$/    /\bcom/    /com\b/

例1、匹配位于一行的开始处最多有两个数字的章节标题:

             /^Chapter [1-9][0-9]{0,1}/
例2、匹配一行文字的开始和结束位置的正则表达式
            /^Chapter [1-9][0-9]{0,1}$/
例3、以com结尾的单词
/com\b/

或运算

/to|too|2/ 字符串中含有to或者too或者2的。

转义字符的运用

\

转义字符也很关键,尤其是在一些关键字等做正则的时候,就需要转义!!!