gpt4 book ai didi

javascript - 尝试通过 javascript 中的正则表达式将一组有限的数组元素与字符串匹配

转载 作者:行者123 更新时间:2023-12-03 06:48:28 24 4
gpt4 key购买 nike

这是我想到的:

function isValid(str){
var letters = ['a','b','c','d','e','f','g','h','i','j','Z','N','L','Q','R'];
var parsedStr= str.trim().split(/\s+/); //returns array of each phrase seperated by a space, ex: ['Za', 'Nj']
if( (new RegExp( '\\b' + parsedStr.join('\\b|\\b') + '\\b') ).test(str) ) {
console.log('match');
}
}

但是我认为我的设置不正确。理想情况下,我希望它按空格解析字符串并将它们播放到数组中(我已经完成了),然后通过正则表达式检查 parsedStr 中的每个字母是否与接受的字母的 CONST 匹配。

例如

isValid("Za Zy") => 不匹配,因为 y 不是接受字符的 CONST 中的有效字符

isValid("Za Qf") => 匹配,因为此表达式中的每个字母都可以在 CONST 字母数组中找到。

我知道我需要在某处合并一个循环,但不确定如何:/

最佳答案

生成匹配空格和数组元素组合的正则表达式

function isValid(str) {
var letters = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'Z', 'N', 'L', 'Q', 'R'];
if ((new RegExp('^[\\s' + letters.join('') + ']+$')).test(str)) {
console.log('match ' + str);
} else {
console.log('not match ' + str);
}
}

isValid("Za Zy")
isValid("Za Qf")

关于javascript - 尝试通过 javascript 中的正则表达式将一组有限的数组元素与字符串匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37615033/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com