正则表达式匹配0或1

时间:2014-01-10 20:46:25

标签: javascript regex

就像这听起来很简单,我正在努力解决它,我需要一个正则表达式来匹配输入到字段中的0或1,并且在数字或字母表中没有任何其他字符可以得到任何帮助。

5 个答案:

答案 0 :(得分:3)

单个字符,0或1:

/^[01]$/

多个0或1(任何顺序,没有其他字符):

/^[01]+$/g

Demo(只需为第二个示例添加+。演示结尾的gm仅用于示例,因为测试用例有多行代表)

答案 1 :(得分:0)

一个简单的0|1表达式不起作用?

答案 2 :(得分:0)

([01])  

http://rubular.com/r/TMu6vsx6Dn

如果您只想要第一次出现,这也会起作用。

(^[01])  

http://rubular.com/r/i3brvRutCg

这是你要找的吗?

答案 3 :(得分:0)

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

示例:

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

答案 4 :(得分:0)

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

var input; // your input string assume it is populated elsehwere
if (input === '0' || input === '1') {
   // pass
}

请注意,此处使用严格的字符串比较来消除与truthy / falsey值的匹配。

如果你真的想要一个正则表达式尝试:

/^[01]$/

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