RFC 2822 and the related specs are really quite permissive in terms of email addresses, so a class like this is overkill for most uses. Only way to build yourself (but this is a snapshot, not RELEASE) and use, or download from here.
For example, the following is a legitimate address, according to spec, spaces and all: No mail server would allow that, but this class can parse it (and rewrite it to a usable form). This means 1.4 has not been made final for three years (2008-2011). I'm looking for a better option, but didn't find one that is very adopted.
The following code shows the implementation of this validate() function.
Now we will see how we can validate our entered form data before submitting it to the web server.
Description: A script that closely examines the content of a form box to ensure that the user entered a valid email address.
If not, the form submition is canceled, and the surfer prompted to re-enter a valid address.
It's not a lexer-style parser, but uses some complicated java regex, and thus is not as efficient as it could be, but my company has parsed well over 10 billion real-world addresses with it: it's certainly usable in a high-performance situation. BTW, I found that there is a 1.4 version, here are the API docs.