From: Stefano Crocco Date: 2010-09-08T21:08:57+09:00 Subject: Re: Small improvements ideas ? On Wednesday 08 September 2010, Chris wrote: > |Hello, I would like to know how to shorten these two lines > | > |1) doit() if my_string && my_string.downcase == 'hello' > |2) doit() if one_var && (my_string =~ /this_regexp/) == nil > | > |Case 1) is a way to check for my_string beeing nil (would break on > |downcase call). But it's verbose, nothing better ?? You can do if (my_string || '').downcase == 'hello' This way, if my_string is nil, the parentheses will evaluate to '' which is a string and will always be different from 'hello' > |Case 2) I want doit beeing call if regexp don't match. would I use ! > |(my_string =~ /this_regexp/) but I don't like using ! because it's not > |very readable and I can't use not keyword in this case I think you can: if one_var && (not(my_string =~ /this_regexp/)) > |Thanks I hope this helps Stefano