ruby 使用grep和=~的返回值
result="str".grep(/re/):如果没有匹配成功则,result.to_s为“”,所以不应使用if "str".grep()来判断是否有成功的匹配,即时没有成功的匹配"str".grep()也是非nil非false的。可以使用=~进行判断,如果没有匹配成功的话"str" =~ /re/会返回nil。
result="str".grep(/re/):如果没有匹配成功则,result.to_s为“”,所以不应使用if "str".grep()来判断是否有成功的匹配,即时没有成功的匹配"str".grep()也是非nil非false的。可以使用=~进行判断,如果没有匹配成功的话"str" =~ /re/会返回nil。