[英]REGEX to discard floating numbers and leading zeros
我有一个Regex表达式,除了零和浮点数之外只允许正数^0*[1-9][0-9]*(\\.[0-9]+)?|0+\\.[0-9]*[1-9][0-9]*$
但它允许浮动数字,任何人都可以修改这个并让我知道正则表达式
有效:
1-any number
01 - any number
无效:
00 - any leading zeros
0
1.4 - floating numbers
abc - alphabets
-1 - negative numbers
试试这个模式[0]*[1-9][0-9]*
为:
String str = "00012";
str.matches("[0]*[1-9][0-9]*");
哪里:
[0]*
是字符串开头的任意数字0
[1-9]
从1到9的一位数
和[0-9]*
从0到9的任意位数
如果你想在JavaScript中使用它,只需用^和$修改它来确定字符串的开头和结尾,如:
^[0]*[1-9][0-9]*$
斯坦尼斯拉夫的正则表达式(见下文)我认为匹配你想要的。 如果您同意,请向他投票! (注意:您可能需要将其包装在^和$中,以便它匹配字符串的开头和结尾,如下所示: ^[0]*[1-9][0-9]*$
)您可以在此处测试:
/* https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/Forms/Data_form_validation */ input:invalid { border: 5px solid red; }
<input pattern="[0]*[1-9][0-9]*">
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.