我需要帮助拆分两个电子邮件地址,这些地址由分隔符'AND'分隔。我在分割时遇到问题,当电子邮件地址在电子邮件ID中有字符'AND'时。例如,如果需要拆分的电子邮件地址如下所示。两个电子邮件地址之间没有空格。
'anandc@AND.comANDxyz@yahoo.co.in', and the delimiter is'AND'
在上述情况下,似乎提取了三个项而不是两个。有人可以帮我解决这个问题。在此先感谢
答案 0 :(得分:2)
您可以使用" AND "
作为分隔符。
String str="anandc@AND.com AND xyz@yahoo.co.in";
String[] emailArr=str.split(" AND ");
或者您可以使用以下regex
String str = "anandc@AND.com AND xyz@yahoo.co.in";
Pattern p = Pattern.compile("[_A-Za-z0-9-]+(\\.[_A-Za-z0-9-]+)*@[A-Za-z0-9]+
(\\.[A-Za-z0-9]+)*(\\.[A-Za-z]{2,})");
Matcher matcher = p.matcher(str);
while (matcher.find()) {
System.out.println(matcher.group(0));
}
Out put
anandc@AND.com
xyz@yahoo.co.in
答案 1 :(得分:1)
提供正确的输出
public class Test {
public static void main(String args[]) {
String text = "anandc@AND.com AND xyz@yahoo.co.in ";
String[] splits = text.split(" AND ");
for (int i = 0; i < splits.length; i++) {
System.out.println("data :" + splits[i]);
}
}
}
输出
data :anandc@AND.com
data :xyz@yahoo.co.in
答案 2 :(得分:1)
使用此:
String[] splits = text.split("\\s+AND\\s+");
答案 3 :(得分:0)
http://docs.oracle.com/javase/7/docs/api/java/lang/String.html#split(java.lang.String) 正则表达式将区分大小写
实际上,最好是使用分隔符表示你确定不会出现在地址中