人民币格式匹配

小写格式:¥ 符号 和 整数值 与小数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

最新文章

  1. DDD:Strategic Domain Driven Design with Context Mapping
  2. IOS集合NSSet与NSMutableSet知识点
  3. Orchard常见问题
  4. 由linux内核某个片段(container_of)引发的对于C语言的深入理解
  5. 锋利的JQuery-Jquery选择器
  6. 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(19)-权限管理系统-用户登录
  7. Qt自定义事件的实现(军队真正干活,但要增加监军,大平台通知事件,事件内容自定义)
  8. AttributeError at /home/home/ Exception Type: AttributeError at /home/home/
  9. GO语言搭建
  10. 记一次gitlab添加账号收不到邮件的解决办法
  11. Unity3D - Animator Controller循环依赖
  12. xadmin库的下载安装及奇葩报错的解决方法
  13. Learning ROS for Robotics Programming Second Edition学习笔记(五) indigo computer vision
  14. &lt;context:annotation-config /&gt;和 &lt;context:component-scan
  15. Python核心编程 | 浅谈闭包的使用
  16. Java 面向对象编程小练习(曾经)
  17. [20171130]关于rman备份疑问.txt
  18. version-script 控制 so的符号输出
  19. c#无边窗体实现移动的两种方式
  20. mysql无法应用安全设置的解决方法

热门文章

  1. 40个Java多线程面试问题
  2. 脑残式网络编程入门(五):每天都在用的Ping命令,它到底是什么?
  3. 每天学点SpringCloud(八):使用Apollo做配置中心
  4. 《http权威指南》读书笔记6
  5. Jquery+Eayui实现列表选择功能
  6. muduo-ThreadLocal实现细节——阻止销毁未定义对象
  7. Elastic Search 上市了,市值翻倍,这群人财务自由了!
  8. 设置python环境变量
  9. netty中的传输
  10. 使用maven插件构建docker镜像