假设我有一个电子邮件地址字符串,例如"John Smith" <JSmith@gmail.com>
,我想要的是获取<>
如果没有得到其他所有内容,我该如何做?
答案 0 :(得分:5)
由于您似乎在处理标准格式的电子邮件地址(RFC 822),因此您可能需要考虑使用JavaMail API。你想要的代码很简单。例如,假设input
包含您的电子邮件地址字符串:
String email = new InternetAddress(input).getAddress();
答案 1 :(得分:1)
正则表达式是一个很好的方法(http://java.sun.com/developer/technicalArticles/releases/1.4regex/)
或者你可以使用子串......
有些事情......
public static String getEmail(String x) {
int firstBracket = 0;
int secondBracket = 0;
firstBracket = x.indexOf("<");
secondBracket = x.indexOf(">");
return x.substring(firstBracket+1, secondBracket);
}
不一定是最强大的解决方案......但如果表格得到保证,它应该可以胜任。
答案 2 :(得分:0)
尝试使用正则表达式。像这样的东西?
String name = "John Smith <smith@example.com>";
String email = name.replaceFirst(".*<(.*?)>.*","$1");