Check whether the address pattern specified in the constructor is
a substring of the string representation of the given Address
object.
Note that if the string representation of the given Address object
contains charset or transfer encodings, the encodings must be
accounted for, during the match process.
if (a instanceof InternetAddress) {
InternetAddress ia = (InternetAddress)a;
// We dont use toString() to get "a"'s String representation,
// because InternetAddress.toString() returns a RFC 2047
// encoded string, which isn't what we need here.
return super.match(ia.toUnicodeString());
} else
return super.match(a.toString());