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

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 ]/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 属性,^ 也匹配 ' ' 或 ' ' 之后的位置。

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

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

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

   ():整体

例如:  

      /^hello/    /hello$/    /com/    /com/

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

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

或运算   

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

转义字符的运用

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

原文地址:https://www.cnblogs.com/dftencent/p/3878468.html