假设我有一个字符串,我想要扫描它以查看是否包含我选择的“坏”单词。 :)
将字符串拆分为数组,并将坏单词保存在另一个数组中,然后逐个遍历每个坏单词和每个输入单词,以查看是否存在匹配,这样做是否更快呢?
badwords.each do |badword|
incoming.each do |word|
trigger = true if badword == word
end
end
还是这样做更快:
incoming.each do |word|
trigger = true if badwords.include? word
end
还是将字符串保留原样并使用类似以下的正则表达式进行.match(),速度更快呢?
/\bbadword1\b|\bbadword2\b|\bbadword3\b/
或者性能差异几乎可以忽略不计?我一直在想这个问题。