我一开始就承认我不喜欢并且并不真正理解正则表达式。我想检查单个字符ch
是否是一组可接受的字符之一。我认为这应该有效,但它没有:
if (/aCcehIikmNnOoprSstxYy/.test(ch)) {
我究竟做错了什么?
谢谢。
我一开始就承认我不喜欢并且并不真正理解正则表达式。我想检查单个字符ch
是否是一组可接受的字符之一。我认为这应该有效,但它没有:
if (/aCcehIikmNnOoprSstxYy/.test(ch)) {
我究竟做错了什么?
谢谢。
您需要将字符集包含在 [ ] 中:
if (/[aCcehIikmNnOoprSstxYy]/.test(ch)) {
没有它,您将尝试匹配整个字符串“aCcehIikmNnOoprSstxYy”。
我认为这可以在没有正则表达式的情况下解决:
var characters = "aCcehIikmNnOoprSstxYy";
var allowed = characters.indexOf("C") != -1;
if (allowed) {
// do something here
}
如果字符不在字符串中,则 String.indexOf() 返回 -1,否则返回正数。