正则

正则语法

匹配数字\d                                       ------------------------> 非数字 \D

匹配字母,数字,下划线 \w                 ------------------------>非字母,数字,下划线 \W

匹配空白符(回车,换行之类的空白符)\s  ------------------------>非空白符 \S

匹配单词边界 \b             ------------------------>非单词边界 \B

全局匹配 g

忽略大小写 i

n?匹配0个或1个

n*匹配0个或多个

n+匹配一个或多个

{n}匹配n个

(一般这种个数匹配都是贪婪匹配,但是如果在*,+,{}后面使用?就表示非贪婪匹配)

^:如果出现在开头,基本表示以.....开头。如果出现在括号里面表示非

$: 表示以……结尾

(?=) :正向预查,表示只参与匹配,不参与选择,需要括号包裹

[] :表示匹配某一位

():在replace方法中就可以使用$来选择某一位

经典题型:

点分数字,每三位数打一个点

var str = '10000'
str.replace(/(?=(\B)(\d{3})+$)/g, '.')

这道题就要使用正向预查,即只匹配数字,但是不选择数字来替换,还要注意要匹配是非单词边界的地方

 

posted @ 2020-08-08 14:57  kkkllo  阅读(126)  评论(0)    收藏  举报