展开全部
用正则表达式提取一个网站里面的所有邮箱地址e68a8462616964757a686964616f31333337616565
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.regex.*;
public class MyRegex {
public static void main(String[] args) {
try {
//读取网页文件,里面有N个邮箱地址
String content = read("e:/1.htm");//read()方法在下面
//匹配邮箱的正则表达式
String regex="//w+([-+.']//w+)*@//w+([-.]//w+)*//.//w+([-.]//w+)*";
Matcher m=Pattern.compile(regex).matcher(content);
while(m.find()){
//输出邮箱地址
System.out.println(m.group());
}
} catch (IOException e) {
e.printStackTrace();
}
}
/**
* 读取文本内容
* @param fileName 文本名称,包括路径
* @return 返回文本内容
*/
public static String read(String fileName) throws IOException{
BufferedReader br=new BufferedReader(new FileReader(fileName));
StringBuilder sb=new StringBuilder();
String s;
while((s=br.readLine())!=null)
{
sb.append(s);
sb.append("/r/n");
}
br.close();
return sb.toString();
}
}