Regexp for extracting email addresses

import java.util.regex.Pattern;  
import java.util.regex.Matcher;  
class Module1{ 
    private static final String EMAIL_EXTRACTION_REGEXP = "(?:[a-z0-9])(?:(?:[-a-z0-9._])*(?:[a-z0-9]))*\\@(?:[a-z0-9])(?:([a-z0-9-])*(?:[a-z0-9]))+(?:\\.(?:[a-z0-9])(?:[-a-z0-9_-])?(?:[a-z0-9])+)+";  
    private static final Pattern EMAIL_EXTRACTION_PATTERN = Pattern.compile(EMAIL_EXTRACTION_REGEXP);  
    private static final String TEST_STRING = "Here it is: tib@infoway.com. Another one: abc-def.something.new@something-else.co.uk\n\nAnd finally@\n\nyet another one: standards@infoway-inforoute.ca"; 

    public static void main(String[] asd){  
         Matcher m = EMAIL_EXTRACTION_PATTERN.matcher(TEST_STRING);  
         while (m.find()){  
              System.out.println(m.group(0));  
         }  
    }  
}