java中如何取得特定字符前的字符串

现有一个邮箱地址
String email = "****@163.com";
如何将邮箱的用户名****和他的邮箱类型(163)截取出来分别放在一个字符串里

第1个回答  2010-12-25
/**
* 保证邮箱地址正确提前下,取得邮箱地址的用户名和域名字符串
* @author 极乐鸟jileniao.net
* @version 01-00
* @since 01-00
*/
public class test {

public static void main(String args[]) {

// 定义邮箱地址的字符串
String mail = "[email protected]";

// 使用split() 方法把 @ 号左右部分分开并保存到数组中
String[] tmp = mail.split("@");

// 数组第一个元素就是邮箱用户名
String mailName = tmp[0];

// 数组第二个元素就是邮箱域名
String mailDomain = tmp[1];
}
}

极乐鸟回答。

参考资料:http://jileniao.net

第2个回答  2010-12-25
使用正则表达式
^(?<UserName>\w+)@(?<MailType>\w+)\.\w+$
然后把UserName,MailType返回值提取中来就行了,Java中具体关于正则表达式的操作方法,你可以上网搜一下!
第3个回答  推荐于2017-10-15
String name = email.substring(0,email.indexOf("@"));
String type = email.substring(email.indexOf("@") + 1 , email.indexOf("."));
System.out.println(name + " " + type );本回答被提问者采纳
第4个回答  2018-03-30

String str = "房估字(2014)第YPQD0006号";


String jieguo = str.substring(str.indexOf("第")+1,str.indexOf("号"));

本回答被网友采纳
第5个回答  2010-12-25
String email = "****@163.com";
String name = email.substring(0,email.indexOf("@"));
String type = email.substring((email.indexOf("@")+1),email.indexOf("."));