Java使用正则表达式搜索文本内所有的email地址并打印出来
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class SearchAddress {//TODO 创建查找地址类
/**
* @author liuxuewei
*/
public static void main(String []args) throws IOException{
try {
BufferedReader in=new BufferedReader(new FileReader("<a href="F://Java">F://Java编程//text1.txt"));
Pattern regex=Pattern.compile("(\\\\w[-.\\\\w]*\\\\@[-a-z0-9]+(\\\\.[-a-z0-9]+)*\\\\.(com|edu|info))", Pattern.CASE_INSENSITIVE|Pattern.MULTILINE);
String tempstr=new String();
String str=new String();
String find=null;
while((tempstr=in.readLine())!=null){
str=str+tempstr+"\\n";
}
Matcher mat=regex.matcher(str);
while(mat.find()){//TODO 测试regex
find=mat.group(1);
System.out.println("Find:"+find);
System.out.println("匹配的正则式:"+regex.pattern());//输出匹配的正则表达式
}
if(find==null)
System.out.print("Can't Find");
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}</pre>
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。