正则表达式

格式

  正则表达式以/开始,以/结束中间包含字符串的匹配规则。

  /a/匹配字符串中的第一个a字符,/abc/表示匹配连续的abc字符。

常用符号

  []表示当前字符位置匹配的集合(注意元素间没有逗号分隔),例如:/[abc]/可以匹配"a","b"或者"c",[0-9]可以表示所有数字[a-z]表示所有小写字母[A-Z]表示所有大写字母。例如/[1-9][0-9]/表示10-99的所有数字。

  ^在集合外面表示以某个规则开始,如/^[0-9]/表示以数字开始,在集合里面表示除集合外的所有符号如/[^a-z]/表示除小写字母外的所有符号都匹配规则

  $表示以某个规则结尾,可以与^一起使用,/^[a-z][0-9]$/表示以小写字母开始,并以数字结束,例如a1、b3。

  \w表示所有字母、数字以及下划线,相当于[a-zA-Z0-9_],\W表示除去所有字母数字和下划线,相当于[^a-zA-Z0-9_]。

  {n,m}可以表示某规则的匹配个数,/[0-9]{2,4}/表示只能匹配两个数字到四个数字例如01、333、4444,n必须小于等于m,且{n,}表示>n个,{n}表示n个。

  +表示至少有一个匹配该规则的字符例如:/[a-z]+www/可以匹配"qwww"也可以匹配"adsdawww"。

  *表示匹配某规则0次或多次。

  ?表示匹配某规则0次或1次,当?出现在匹配次数相关操作符后面时,表示非贪婪匹配,如+?代表至少匹配一次,但尽量少匹配,??表示匹配0次或一次,但尽量少匹配,例如:/[\d]+/匹配"123"的结果是123而/[\d]+?/匹配"123"的结果是1。

  \s表示所有空字符包括制表符、空格、换页符,\S表示除空字符外所有字符。

  \d表示所有数字,相当于[0-9]。

  .表示除换行符外的所有字符。

  \b用于匹配有边界的单词比如/\bred\b/匹配"abc red a"但不匹配"redww sred"。

  

 

posted @ 2022-10-15 16:55  lrplrplrp  阅读(111)  评论(0编辑  收藏  举报