如何从字符串中提取电子邮件地址,如下所示,分隔符为“AND”?
String str="abb@AND.comANDbbb.comANDccc@xxd.AND";
尝试以下代码段,
public class TokenizerTest
{
private final String testStr = "abb@AND.comANDbbb.comANDccc@xxd.AND";
public static void main(String[] args)
{
TokenizerTest tst = new TokenizerTest();
tst.tokenize();
}
public void tokenize()
{
if(testStr != null)
{
Pattern p = Pattern.compile("[*]*AND*[^.AND]");
String[] tokens = testStr.split(p.pattern());
for(String token:tokens)
{
System.out.println(token);
}
}
}
}
结果是
abb@AND.com
bb.com
cc@xxd.AND
简短的回答:计算机说不。
根据您提供的字符串,它可能无法以可靠的方式完成,因为不清楚什么是电子邮件地址,什么是分隔符。事实上,很难从该行中提取一个或两个以上的有效电子邮件地址。
我建议您首先检查您的数据集以查看它是否已损坏,然后找到使用不同分隔符的方法。