Javascript Regexp只允许'A'或'B'字母,并限制一个字母

Javascript Regexp只允许'A'或'B'字母,并限制一个字母,javascript,regex,Javascript,Regex,我要求允许用户输入A或B,长度不应超过1 我已经试过了,但不起作用: inputValue.replace( /[A|B]/{1}g, ''); 有什么建议吗?你真的需要正则表达式吗 测试if(inputValue='A'| | inputValue='B')似乎就足够了 不管怎样,使用正则表达式,它可以是: console.log(/^[AB]$/g.test('A'));//真的 console.log(/^[AB]$/g.test('B'));//真的 console.log(/^[

我要求允许用户输入
A
B
,长度不应超过1

我已经试过了,但不起作用:

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

有什么建议吗?

你真的需要正则表达式吗

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

不管怎样,使用正则表达式,它可以是:

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

console.log(/^[AB]$/g.test('AB'));//false
/[AB]/g
/A | B/g
为什么使用
替换
?请添加完整的相关代码
inputValue==“A”| | inputValue==“B”
。是的,
/[A | B]{1}/g
不是
/[A | B]/{1}g
注意,
inputValue.replace()
inputValue
的值没有任何影响。如果OP坚持使用正则表达式,则
/^(A$/
/^[AB]$/
更精确。但在我的案例中,他们使用了替换方法。所以我需要替换除
A
B
之外的输入,这对我来说是有效的
inputValue.replace(/[C-Z0-9]{1}/g',)但它允许特殊字符,如何修复it@3gwebtrain如果您的要求是替换非A或B字符,请在问题描述中清楚地写下这一点。要做到这一点,请阅读基本的regexp语法,尤其是否定字符集。堆栈溢出不是一项教程服务,具有4K代表的人应该很清楚这一点。@3gwebtrain更新了我的答案