Holy insanely long regex, Batman!  I would suggest splitting it up on multiple lines likes its done in Validation::_populateIp().