繁体   English   中英

REGEX丢弃浮点数和前导零

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM