通過正則表達式提取 Email 地址的Java代碼

m4ed 9年前發布 | 2K 次閱讀 Java

import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;

public class RegularExpression { public static void main(String[] args) throws IOException {

    // Simple expression to find a valid e-mail address in a file
    Pattern pattern = Pattern.compile("[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,4}");
    // Read file, find valid mail addresses and print result
    File file = new File("test.txt");
    BufferedReader in = new BufferedReader(new FileReader(file));
    int lines = 0;
    int matches = 0;
    for (String line = in.readLine(); line != null; line = in.readLine()) {
        lines++;
        Matcher matcher = pattern.matcher(line.toUpperCase());
        if (matcher.matches()) {    
            System.out.println(lines + ": '" + line + "'");
            matches++;
        }
    }
    // output of summary
    if (matches == 0) {    
        System.out.println("No matches in " + lines + " lines");
    } else {
        System.out.println("\n" + matches + " matches in " + lines + " lines");
    }
}

}</pre>

 本文由用戶 m4ed 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!