gpt4 book ai didi

javascript - 将匹配主题中相似或相同字符串的正则表达式模式

转载 作者:太空宇宙 更新时间:2023-11-04 16:00:31 25 4
gpt4 key购买 nike

我什至不知道如何正确设置这个问题的标题。所以我一直在尝试做一些事情,但我失败了。我认为最好在下面展示一些我想要实现的目标的示例。

// Let's say I have a list of some tags/slugs.

$subjects = [
'this-is-one',
'might-be-two',
'yessir',
'indeednodash',
'but-it-might'
];

$patterns = [
'this-is-one', // should match $subjects[0]
'mightbetwoorthree', // should match $subject[1]
'yes-sir', // should match $subject[2]
'indeednodash', // should match $subject[3]
'but-it-might-be-long-as-well' // should match $subject[4]
];

所以,正如人们可能看到的那样...某些模式与给定的主题不完全/完全匹配...所以这就是我的问题。我想制作一个正则表达式,它将匹配所有可能的变化。

我在 foreach 循环中尝试了一些基本的东西,但是 ofc 它不会工作,因为它不完全匹配......

if (preg_match("/\b$pattern\b/", $subject)) { // ... }

请提供任何建议、解释和代码示例...我正在尝试将我的注意力集中在正则表达式上,但进展不顺利。

我也会标记 JS,因为不一定要与 phppreg_match 做任何事情。

最佳答案

function getMatchesOf(pattern, subjects) {
var result = [];
pattern = pattern.replace(/[^a-z]/g, '');
subjects.forEach(function(subject) {
var _subject = subject.replace(/[^a-z]/g, '');
if(pattern.includes(_subject))
result.push(subject);
});

return result;
}


var subjects = [
'this-is-one',
'might-be-two',
'yessir',
'indeednodash',
'but-it-might'
];

var patterns = [
'this-is-one',
'mightbe',
'yes-sir',
'indeednodash',
'but-it-might-be-long-as-well'
];

console.log(patterns[0] + " matches: ", getMatchesOf(patterns[0], subjects));

console.log(patterns[4] + " matches: ", getMatchesOf(patterns[4], subjects));

关于javascript - 将匹配主题中相似或相同字符串的正则表达式模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42321751/

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