How to remove characters present in first string from the second string in Ruby

2 Answers

0 votes
require "set"

# Removes all characters from source that appear
# in chars_to_remove.
def remove_characters(source, chars_to_remove)
  forbidden = chars_to_remove.chars.to_set

  source
    .chars
    .reject { |ch| forbidden.include?(ch) }
    .join
end

first  = "programming language"
second = "rogy"

result = remove_characters(second, first)

puts %(First : "#{first}")
puts %(Second: "#{second}")
puts %(Result: "#{result}")



# run:
# 
# First : "programming language"
# Second: "rogy"
# Result: "y"
#

 



answered Oct 4 by avibootz
0 votes
require "set"

# Removes all characters from source that appear
# in chars_to_remove.
def remove_characters(source, chars_to_remove)
  forbidden = chars_to_remove.chars.to_set
  source.chars.filter_map { |ch| ch unless forbidden.include?(ch) }.join
end

first  = "programming language"
second = "rogy"

result = remove_characters(second, first)

puts %(First : "#{first}")
puts %(Second: "#{second}")
puts %(Result: "#{result}")



# run:
# 
# First : "programming language"
# Second: "rogy"
# Result: "y"
#

 



answered Oct 4 by avibootz

Related questions

...