我将一个 javscript 字符串拆分成一个数组,其元素仅包含西里尔字符序列。
var text = "где по его проекту был реализован первый в мире компьютер с хранимой в памяти программой — ACE."
text=text.toLowerCase();
var re = /[^йцукенгшщзхъёэждлорпавыфячсмитьбю]+/;
words = text.split(re);
在上面的片段中,单词将包含以下内容
["где", "по", "его", "проекту", "был", "реализован", "первый", "в", "мире", "компьютер", "с", "хранимой", "в", "памяти", "программой", ""]
我需要从数组中删除重复项。也就是说,我应该只看到一次“в”的出现。我知道我可以在拆分后通过数组执行此操作,但不确定什么是最好的方法。是否可以使用拆分正则表达式来做到这一点?
乔纳森
最佳答案
不是最有效的,但它干净简单。
text.split(re).filter(function(str, idx, txtArray) {
return txtArray.indexOf(str) === idx;
});
基本上,如果找到的第一个索引与迭代中的当前索引不匹配,则它是重复的。
关于javascript - 拆分字符串并确保结果数组中没有重复项的最有效方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20830690/