首页 > 解决方案 > 正则表达式验证大小单位,如 10、10Gi、10.5Mi、10Ki?

问题描述

我正在使用这个正则表达式/\d+\.*\d*[KMG]i/gm来验证像 10Ki、10Mi 和 10Gi 这样的单位的大小,但是我遇到了一个问题,我只想要这个数值以及像 10、12、15 一样的任何值,但我当前的正则表达式只允许在下面给出:

正则表达式:/\d+\.*\d*[KMG]i/gm

允许:14.4Mi、9.9Gi、10Ki

要求:14、14.4、14.4Mi、9.9Gi、10Ki

任何帮助将不胜感激。谢谢

标签: javascriptreactjsregexvalidationregex-group

解决方案


您需要使小数部分可选,最后的字母字符可选。您可以使用正则表达式中的问号来执行此操作:

\d+(.\d)?([KMG]i)?

满足您的所有要求


推荐阅读