I think this is slightly more readable, although I don't feel strongly.

`value.is_a?(String) && (m = re.match(value))`