js正则表达式之人民币匹配
Posted 破壳而出的蝌蚪
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js正则表达式之人民币匹配相关的知识,希望对你有一定的参考价值。
人民币格式匹配
小写格式:¥ 符号 和 整数值 与小数3部分组成。
(0)代码与运行结果
{ // 匹配人民币 let [reg, info, rmb, result] = [ /^(¥)(-?[0-9,]+)(\\.[0-9]+)?/, [\'金额\',\'符号\', \'整数部分\', \'小数分部\'], [\'¥10.01\', \'¥10\', \'¥1,111.01\', \'¥1,000,12\', \'¥0.1\', \'¥10.00\'] ]; rmb.forEach((value) => { console.log(\'---------------------------------------------------------------------------------\'); for (let i = 0, result = reg.exec(value); i < result.length; i++) { console.log(`${info[i]} = ${result[i]}`); } }); }
(1)¥ 符号匹配
金额是由 ¥ 作为起始符的
匹配规则为: ^¥
(2)整数匹配
1:金额可为负的
2:金额数多的时候会存在千分符(,)如:¥ 122,000,112.00
匹配规则为:(-?[0-9,]+)
-? : 因为金额可能会存在负数也可能不存在,所以匹配0次或1次
[0-9,]+ : 前部分[0-9,]表示匹配其中任意一个字符,后面跟个+符号表示前面那组模式的数据至少会出现1次甚至更多次。
(3)小数部分匹配
1:小数部分数据是由点(.),后接数值组成。
匹配规则为:(\\.[0-9]+)?
(\\.[0-9]+)? :前部分(\\.[0-9]+) 为小数 后面跟个?问号表示有可能存在小数部分,有可能没有。
(4)组合匹配规则
^(¥)(-?[0-9,]+)(\\.[0-9]+)?
我的百度经验地址:https://jingyan.baidu.com/article/d3b74d64367dd61f77e60908.html
以上是关于js正则表达式之人民币匹配的主要内容,如果未能解决你的问题,请参考以下文章