regex - 带有两位小数或非负整数的非负数的正则表达式。无前导 0
问题描述
As-salāmu ʿalaykum,
Allowed:
0
0.00
0.01
0.10
0.11
1
1.00
1.10
1.01
1.11
99999999
99999999.00
99999999.01
99999999.10
99999999.11
NOT ALLOWED:
.
.00
00
00.
00.00
00.01
00.10
00.11
01
010
01.
01.00
01.000
我可以继续,但我想你明白我想要什么的要点。正则表达式将用于验证货币,最多有两个可选小数。小数点左边没有上限,只要它不是前导 0。
它将在 Java 应用程序中使用。
提前致谢
解决方案
一种选择是,从字符串的开头开始,对 0 后跟一个数字使用负前瞻,然后只测试可选的数字,后跟 a.
后跟更多数字:
^(?!0\d)\d+(\.\d\d)?
推荐阅读
- r - 按列索引拆分为数据框列表
- sql-server - TSV 上的“BCP 复制失败”
- c# - 转换为字节数组后颜色错误
- regex - Textedit:如何用同一个词替换几个不同的词?
- python - subprocess.check_output(['git', 'shortlog'])
- android - LinearLayout 和 CameraSource 不填满屏幕
- python - SQLAlchemy:“InstrumentedList”对象没有属性/错误请求浏览器(或代理)发送了此服务器无法理解的请求
- android - Android studio 无法识别手机
- xml - 使用 SharePoint Designer 将 XML 从自定义列表库解析到文档库
- c# - 更新另一个类的值