email地址正则表达式java,Java 使用正则表达式从文件中解析出全部email地址

Java 使用正则表达式从文件中解析出所有email地址

import java.io.File;

import java.io.IOException;

import java.util.regex.Matcher;

import java.util.regex.Pattern;

import org.apache.commons.io.FileUtils;

/**

* 提取邮件地址

* @author Roger Federer

* @date 2013-10-16 下午13:27:00

*/

public class EmailParser {

private final static Pattern emailer = Pattern.compile("[\\w[.-]]+@[\\w[.-]]+\\.[\\w]+");

/**

* @param args

* @throws IOException

*/

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

//String txt = FileUtils.readFileToString(new File(args[0]));

String txt = "test@sina.comtest@sina.com test@sina.com test1@sina.com test@sina.com xxxx@sina.com,test@sina.com";

//System.out.println(txt);

Matcher matchr = emailer.matcher(txt);

while (matchr.find()) {

String email = matchr.group();

System.out.println(email);

}

Matcher matcher = emailer.matcher(txt);

String matchecText = null;

int matchedFrom = 0;

int matchedTo = 0;

while (matcher.find()) {

matchecText = matcher.group();

matchedFrom = matcher.start();

matchedTo = matcher.end();

System.out.println("matched [" + matchecText + "] from [" + matchedFrom + "] to [" + matchedTo + "]" );

}

}

}

运行结果:

test@sina.comtest

test@sina.com

test1@sina.com

test@sina.com

xxxx@sina.com

test@sina.com

matched [test@sina.comtest] from [0] to [17]

matched [test@sina.com] from [27] to [40]

matched [test1@sina.com] from [41] to [55]

matched [test@sina.com] from [56] to [69]

matched [xxxx@sina.com] from [70] to [83]

matched [test@sina.com] from [84] to [97]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值