I am doing a gsub to swap "bad" for "good". Is there a way to use capitalize so it will swap both lower and upper case? Or will I have to write the def twice?
def add_more_ruby(string) string.gsub('bad','good').capitalize end
gsub (s, pattern, repl [, n]) Returns a copy of s in which all (or the first n , if given) occurrences of the pattern have been replaced by a replacement string specified by repl , which can be a string, a table, or a function. gsub also returns, as its second value, the total number of matches that occurred.
You can pass Regexp instead of String, with i option that indicates that this regexp is case insensitive:
def add_more_ruby(string) string.gsub(/bad/i, 'good') end note that it will substitute not only 'bad' and 'BAD', but also, for example, 'bAd'. If you want to substitute only all-uppercase or all-lowercase, you can do:
string.gsub(/bad|BAD/, 'good')
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With