Con esa lo único que aseguras es haya uno de los tres.
Las expresiones regulares son un mundo complejo, sería mucho más cómodo y rápido hacer tres expresiones regulares para controlarlo. De hecho ni siquiera estoy seguro de que en java se pueda hacer lo que quieres en una sola con las librerías normales.
http://stackoverflow.com/questions/3...ession-in-java