gpt4 book ai didi

javascript - 正则表达式匹配特定字符串中的任何字符

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:10:31 26 4
gpt4 key购买 nike

基本上,我试图查看名称的字符是否按顺序出现在字符串的字符中。

'Across the rivers', 'chris' => true 因为:

enter image description here

'A crew that boarding the ship', 'chris' => false 因为:

enter image description here

我有这个:

function nameInStr(str, name){
let stringArray = Array.from(str);
let testName = "";
for (let i = 0; i < stringArray.length; i++) {
if (stringArray[i].match(/any character from name/)) {
testName += stringArray[i];
}
}
if (testName === name) {
return true;
}
else {
return false;
}
}

console.log(nameInStr('Across the rivers', 'chris'));

但是如您所见,我不知道如何测试单个字符何时与 name 中的任何字符匹配。有没有一种简单的方法可以用正则表达式来做到这一点?

编辑 - 测试新方法

function nameInStr(str, name){
let nameregex = new RegExp(".*" + name.split("").join(".*") + ".*");
return str.test(nameregex);
}

console.log(nameInStr('Across the rivers', 'chris'));

最佳答案

将名称转换为单个正则表达式:

let nameregex = new RegExp(".*" + name.split("").join(".*") + ".*");

然后你只需要测试:

return nameregex.test(str);

为了避免名称中正则表达式元字符的潜在问题,它必须变得更花哨一些。

关于javascript - 正则表达式匹配特定字符串中的任何字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57577214/

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