regex 要匹配0或1的正则表达式

ikfrs5lh  于 2023-05-08  发布在  其他
关注(0)|答案(5)|浏览(246)

我需要一个正则表达式来匹配输入到字段中的0或1,并且根本没有其他字符,既不是数字也不是阿尔法。我该怎么做?

hwamh0ep

hwamh0ep1#

单个字符,0或1:

/^[01]$/

多个0或1(任意顺序,无其他字符):

/^[01]+$/g

Demo(第二个例子只需添加一个+。演示中最后的gm只是示例,因为有多行用于测试用例)

fsi0uk1n

fsi0uk1n2#

一个简单的0|1表达式应该可以工作。

moiiocjp

moiiocjp3#

([01])

http://rubular.com/r/TMu6vsx6Dn
如果您只需要第一个事件,这也可以工作。

(^[01])

http://rubular.com/r/i3brvRutCg

vx6bjr1n

vx6bjr1n4#

试试这个正则表达式:/^(0|1)$/
示例:

/^(0|1)$/.test(0); // true
/^(0|1)$/.test(1); // true
/^(0|1)$/.test(2); // false
/^(0|1)$/.test(1001) // false
zysjyyx4

zysjyyx45#

我建议在这里使用简单的字符串求值,因为在输入字符串中只有两个已知的可接受值:

var input; // Your input string assume it is populated elsewhere
if (input === '0' || input === '1') {
   // Pass
}

请注意,这里使用严格的字符串比较来消除truthy/falsey值的匹配。
如果你真的对正则表达式死心塌地,试试:

/^[01]$/

这里的关键是开始^和结束$锚点。

相关问题