我有一个字符串"""JBL@gmail.com
,我想从中删除位于电子邮件地址前面的"""
。我尝试使用split
,但遗憾的是它没有用。
这是我的代码:
String [] sender1 = SA1.split(" ");
String str1 = sender1[0];
System.out.println("the str1 is :"+str1);
String [] sender2 = str1.split("\\\"");
String str2 = sender2[0];
String str3 = sender2[1];
System.out.println("the str2 is :"+str2);
System.out.println("the str3 is :"+str3);
这是我的代码输出 -
the str1 is :"""JBL@gmail.com""
the str2 is :
the str3 is :
我的SA1将包含"""JBL@gmail.com"" <JBL@gmail.com>"
。电子邮件地址可以是大小写字母,数字等的混合。
答案 0 :(得分:1)
您可以通过删除所有引号(replace("\"", "")
),按空格(split(" ")
)拆分,并获取拆分中的第一个元素来获取字符串第一部分中的电子邮件({{ 1}}):
[0]
请注意,第二个元素会产生String str = "\"\"\"JBL@gmail.com\"\" <JBL@gmail.com>\"";
str.replace("\"", "").split(" ")[0];
。
答案 1 :(得分:1)
如果 SA1 确实包含
"\"\"\"JBL@gmail.com\"\" <JBL@gmail.com>\""
然后您可以使用Pattern/Matcher Regular Expression "<(.*?)>"
来从字符串中检索电子邮件地址:
String sa1 = "\"\"\"JBL@gmail.com\"\" <JBL@gmail.com>\"";
String email = "";
Pattern pattern = Pattern.compile("<(.*?)>");
Matcher matcher = pattern.matcher(sa1);
while (matcher.find()) {
// Is a match found?
if (!matcher.group(1).equals("")) {
// There is so place the match into the
// email variable.
email = matcher.group(1);
}
}
// Display the E-Mail Address in Console Window.
System.out.println("E-Mail Address is: " + email);
将显示控制台窗口:
E-Mail Address is: JBL@gmail.com
正则表达式说明:
答案 2 :(得分:0)
"fdsd\"\"\" dsd".split("\"\"\"")
你必须使用
"yourWords".split("\"\"\"")
答案 3 :(得分:0)
String s= "\"\"\"JBL@gmail.com\"\" <JBL@gmail.com>\"".
split("<")[1].replace(">", "").replace("\"", "");