Well, it looks alright, but, as CB said, the try{}...catch{} block is pointless, the only function you call is preg_match() and that does not throw exceptions.

Standard PHP generally as a rule doesn't throw many, if any, exceptions. If you need graceful error handling you can register an error handler function, but correctly written code doesn't produce errors anyway. Error handling is only really useful with things like plugin systems where the quality of code is unknown.