Javascript Regexp仅允许带有一个字母限制的“A”或“B”字母

时间:2017-06-09 09:47:54

标签: javascript regex

我要求用户输入AB,且长度不得超过1。

我已经尝试了这个,但它不起作用:

inputValue.replace( /[A|B]/{1}g, ''); 

任何建议?

1 个答案:

答案 0 :(得分:0)

你真的需要一个正则表达式吗?

测试if(inputValue == 'A' || inputValue == 'B')似乎已经足够了。

无论如何,使用正则表达式,它可能是这样的:



console.log(/^[AB]$/g.test('A'));   // true
console.log(/^[AB]$/g.test('B'));   // true
console.log(/^[AB]$/g.test('AB'));  // false




从评论

更新

使用replace(),您可以使用[^AB]删除任何不是A或B的字符。然后,由于您只需要1个字符,因此您可以使用charAt(0)获取结果中的第一个字符:



console.log('abcABC-*/+"@'.replace(/[^AB]/g, '').charAt(0));