Javascript 用于严格匹配百分比值的正则表达式
我希望严格匹配字符串,如Javascript 用于严格匹配百分比值的正则表达式,javascript,regex,Javascript,Regex,我希望严格匹配字符串,如45%或2% 如果在所需字符串之前或之后添加了其他字符串,如abc34%或34%cd212,则不应匹配。您可以使用以下正则表达式: ^\d+%$ ^字符串的开头。这可以确保不允许使用字符串ABC45% \d+至少一个数字 $字符串的结尾。这样可以确保不允许使用字符串45%ABC 这里有一个活生生的例子: var regex=/^\d+%$/; 变量样本=[ "123%", “ABC12%”, “ABC123%ABC”, “123%abc”, “abc” ]; 对于
45%
或2%
如果在所需字符串之前或之后添加了其他字符串,如
abc34%
或34%cd212
,则不应匹配。您可以使用以下正则表达式:
^\d+%$
字符串的开头。这可以确保不允许使用字符串^
ABC45%
至少一个数字\d+
字符串的结尾。这样可以确保不允许使用字符串$
45%ABC
var regex=/^\d+%$/;
变量样本=[
"123%",
“ABC12%”,
“ABC123%ABC”,
“123%abc”,
“abc”
];
对于(var i=0;i这将适用于您:
const testData=(数据)=>/^(?[1-9]\d?%| 0%)$/。测试(数据)
常数测试=[“1.2%,“120%,“12%,”2%,“ABc%,”1,3%,“23%,“abc34%,”34%cd212%,“00%,”0%。]
对于(测试的x){
log(`${x}${testData(x)}`)
}
@anubhava:只有在字符串foo-24%
中匹配24%
是可以接受的情况下。那么0.000039000%
呢?@sin浮点应该是allowed@MaciejKocieja应该避免“00%”这正是我想要的,0%没问题。谢谢你的帮助