Given the three options, I would argue for #2 by the process of elimination. #1 is out because, as I originally posted at the start of the thread, passing in a null value to RegEx.IsMatch() will throw an exception. Therefore, if you can't definitively say, "Yes, this value matches the regular expression," then you should never return true. #3 should