//正则表达式练习,网络爬虫
/*
步骤:1、读取源文件。 2、对读取的数据进行规则的匹配。从中获取符合规则的数据。 3、将符合规则的数据存储到集合中。
*/
package regex;
import java.io.*;
import java.util.*;
import java.util.regex.*;
public class RegexDemo{
public static void main(String[] args) throws IOException{
List<String> mails = getMails();
System.out.println(mails);
}
public static List<String> getMails() throws IOException {
//定义正则表达式实现对邮箱的模糊匹配
String regex = "\\w+@\\w+\\.\\w+";
//将正则表达式编译
Pattern p = Pattern.compile(regex);
//定义List集合用于保存所获得的有效信息
List<String> mails = new ArrayList<String>();
//1、获取目的文件。
File file = new File("C:\\Users\\Administrator\\Desktop\\java代码\\myMails.txt");
//读取文件信息用于扫描
BufferedReader bufr = new BufferedReader(new FileReader(file));
//读取一行信息并进行扫描
String line = null;
while((line = bufr.readLine()) != null){
//获取该行正则表达式的匹配对象
Matcher m = p.matcher(line);
while(m.find()){ //每匹配到一项将其添加到集合中
mails.add(m.group());
}
}
return mails;
}
}
/*
步骤:1、读取源文件。 2、对读取的数据进行规则的匹配。从中获取符合规则的数据。 3、将符合规则的数据存储到集合中。
*/
package regex;
import java.io.*;
import java.util.*;
import java.util.regex.*;
public class RegexDemo{
public static void main(String[] args) throws IOException{
List<String> mails = getMails();
System.out.println(mails);
}
public static List<String> getMails() throws IOException {
//定义正则表达式实现对邮箱的模糊匹配
String regex = "\\w+@\\w+\\.\\w+";
//将正则表达式编译
Pattern p = Pattern.compile(regex);
//定义List集合用于保存所获得的有效信息
List<String> mails = new ArrayList<String>();
//1、获取目的文件。
File file = new File("C:\\Users\\Administrator\\Desktop\\java代码\\myMails.txt");
//读取文件信息用于扫描
BufferedReader bufr = new BufferedReader(new FileReader(file));
//读取一行信息并进行扫描
String line = null;
while((line = bufr.readLine()) != null){
//获取该行正则表达式的匹配对象
Matcher m = p.matcher(line);
while(m.find()){ //每匹配到一项将其添加到集合中
mails.add(m.group());
}
}
return mails;
}
}