加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

arrays – 删除另一个数组中存在的数组元素

发布时间:2020-12-16 21:31:45 所属栏目:百科 来源:网络整理
导读:有一个单词列表和禁止单词列表.我想通过单词列表并编辑所有被禁止的单词.这就是我最终做的事情(请注意catched boolean): puts "Give input text:"text = gets.chompputs "Give redacted word:"redacted = gets.chompwords = text.split(" ")redacted = reda
有一个单词列表和禁止单词列表.我想通过单词列表并编辑所有被禁止的单词.这就是我最终做的事情(请注意catched boolean):
puts "Give input text:"
text = gets.chomp
puts "Give redacted word:"
redacted = gets.chomp

words = text.split(" ")
redacted = redacted.split(" ")
catched = false

words.each do |word|
  redacted.each do |redacted_word|
    if word == redacted_word
        catched = true
        print "REDACTED "
        break
    end
  end
    if catched == true
        catched = false
    else
        print word + " "
    end
end

有没有适当/有效的方法?

解决方法

您可以使用 .reject排除编辑数组中存在的所有禁止词:
words.reject {|w| redacted.include? w}

Demo

如果要获取单词数组中出现的禁止单词列表,可以使用.select

words.select {|w| redacted.include? w}

Demo

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读