我需要一个正则表达式来匹配输入到字段中的0或1,并且根本没有其他字符,既不是数字也不是阿尔法。我该怎么做?
hwamh0ep1#
单个字符,0或1:
/^[01]$/
多个0或1(任意顺序,无其他字符):
/^[01]+$/g
Demo(第二个例子只需添加一个+。演示中最后的gm只是示例,因为有多行用于测试用例)
+
gm
fsi0uk1n2#
一个简单的0|1表达式应该可以工作。
0|1
moiiocjp3#
([01])
http://rubular.com/r/TMu6vsx6Dn如果您只需要第一个事件,这也可以工作。
(^[01])
http://rubular.com/r/i3brvRutCg
vx6bjr1n4#
试试这个正则表达式:/^(0|1)$/示例:
/^(0|1)$/
/^(0|1)$/.test(0); // true /^(0|1)$/.test(1); // true /^(0|1)$/.test(2); // false /^(0|1)$/.test(1001) // false
zysjyyx45#
我建议在这里使用简单的字符串求值,因为在输入字符串中只有两个已知的可接受值:
var input; // Your input string assume it is populated elsewhere if (input === '0' || input === '1') { // Pass }
请注意,这里使用严格的字符串比较来消除truthy/falsey值的匹配。如果你真的对正则表达式死心塌地,试试:
这里的关键是开始^和结束$锚点。
^
$
5条答案
按热度按时间hwamh0ep1#
单个字符,0或1:
多个0或1(任意顺序,无其他字符):
Demo(第二个例子只需添加一个
+
。演示中最后的gm
只是示例,因为有多行用于测试用例)fsi0uk1n2#
一个简单的
0|1
表达式应该可以工作。moiiocjp3#
http://rubular.com/r/TMu6vsx6Dn
如果您只需要第一个事件,这也可以工作。
http://rubular.com/r/i3brvRutCg
vx6bjr1n4#
试试这个正则表达式:
/^(0|1)$/
示例:
zysjyyx45#
我建议在这里使用简单的字符串求值,因为在输入字符串中只有两个已知的可接受值:
请注意,这里使用严格的字符串比较来消除truthy/falsey值的匹配。
如果你真的对正则表达式死心塌地,试试:
这里的关键是开始
^
和结束$
锚点。