正则表达式只接受0,1,(,),|,&

时间:2017-12-09 01:14:26

标签: javascript regex

我正在尝试创建一个只包含6个字符以内的正则表达式

0.1,(,),|,&安培;

我想出了这个正则表达式

^ [0-1 \ |()\&安培;] $

但即使有效字符串作为输入,它似乎也会失败。如下

const inputStr = "(0&(1&(1|0))";
const validateStr = new RegExp("^[0-1\|\(\)\&]$");
const isValid = validateStr.test(inputStr);

上面需要返回true,但isValid的输出为false。请让我知道我在哪里做错了。

1 个答案:

答案 0 :(得分:0)

您需要在字符集后添加一个加号来搜索整个字符串!



const inputStr = "(0&(1&(1|0))";
const validateStr = new RegExp(/^[0-1()|&]+$/);
const isValid = validateStr.test(inputStr);
console.log(isValid);