gpt4 book ai didi

javascript - 我怎样才能制作一个正则表达式来匹配一个单词中的任何字母 X 次?

转载 作者:行者123 更新时间:2023-11-30 07:26:37 25 4
gpt4 key购买 nike

最近,我开始制作一个文字游戏,即用另一个单词的字母组成单词。比如你有“Teutonic”这个词,你可以做“tonic”,“tone”等。在游戏中,你只能使用单词中可用的字母,不能重复。这意味着虽然“tonic”在上面的例子中是有效的,但“tonico”不会,因为在“Teutonic”中只有一个“o”。

我的问题基本上是,我怎样才能制作一个正则表达式,以便它搜索字母的 one 实例并记住它,这样,在循环的后面给定相同的字母,就不会再找一遍?

因此,如果您有“Teutonic”并且您正在使用正则表达式搜索“tonico”中的每个字母(“t”,“o”,“n”,“i”,“c”,“o”),除了最后一个“o”之外,每个人都会得到“true”。

如果你有单词“Pencil”,你会得到“pen”、“line”和“pile”的真值,但不是“Pipe”。

或者如果你有“小”,你会为“商场”,“商场”而不是“大众”成立。


编辑:

非常感谢您所有的及时回复!我怀疑使用正则表达式方法是不可能的,但我想确定一下。相反,我对数组方法进行了一些试验,认为我没有走得太远。

再次感谢大家!

最佳答案

将字符串拆分为数组,然后与数组进行比较。

function checkStr(str1, str2) {
var arr1 = str1.split(''),
arr2 = str2.split(''),
i,j;
for (i = 0; i < arr2.length; i++) {
if ((j= arr1.indexOf(arr2[i])) === -1) {
return false;
}
arr1.splice(j, 1);
}
return true;
}
// usage
checkStr('small', 'mall');

关于javascript - 我怎样才能制作一个正则表达式来匹配一个单词中的任何字母 X 次?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12136055/

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