获取最后一个顿号后面的数据
const str = "a.b.c";
console.log(str.replace(/[\s\S]*\./, ''));
| 字符 | 描述 |
|---|---|
| \s | 任何空白字符,包括空格、制表符、换页符等等 等价于 [ \f\n\r\t\v] |
| \S | 匹配任何非空白字符。等价于 [^ \f\n\r\t\v] |
| * | 匹配零次或多次。 等价于{0,}。 |
数字格式化,每三个数字加一个逗号,逗号不能在第一位或者最后一位
例如: 38749623873 =》 38,749,623,873
num.replace(reg,’,’) 结果: 38,749,623,873
const num = 38749623873;
const reg = /(?<=\d)(?=(\d{3})+$))/g;
console.log((str+'').replace(reg, ','));
| 字符 | 描述 | |||
|---|---|---|---|---|
| (?=pattern) | 正向预查,在任何匹配 pattern 的字符串开始处匹配查找字符串。这是一个非获取匹配,也就是说,该匹配不需要获取供以后使用。例如,'Windows (?=95 | 98 | NT | 2000)' 能匹配 "Windows 2000" 中的 "Windows" ,但不能匹配 "Windows 3.1" 中的 "Windows"。预查不消耗字符,也就是说,在一个匹配发生后,在最后一次匹配之后立即开始下一次匹配的搜索,而不是从包含预查的字符之后开始。 |
| (?<=exp) | 零宽度正回顾后发断言,它断言自身出现的位置的前面能匹配表达式exp; # 例子:'name:wangfei'.scan /(?<=name:)(wangfei)/ #wangfei 匹配前面为name:,结果为wangfei |