Email matching in a file using pattern in java
SOURCE : EmailMatching.javaimport java.io.BufferedReader;import java.io.File;import java.io.FileReader;import java.io.IOException;import java.util.regex.Matcher;import java.util.regex.Pattern;public class EmailMatching { 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("C:\\new\\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"); } }} INPUTC:\\new\\test.txtin test.txt i have added 2 lines (it can have any number of lines containing emails)sandino63@gmail.comrama.hhhgmail.comOUTPUT
1: 'sandino63@gmail.com'1 matches in 2 lines

0 comments :
Post a Comment