假设我有一个变量:varEmail。它包含一个等于用户电子邮件地址的变量,因此它可能包含如下值:
“myemail@emailserver.com”
现在,我想说我只想获得一部分电子邮件地址,例如剥离域名,如下:
“myemail”
如何在VB.NET中使用字符串操作完成此操作?我知道这一定很简单......也许就在凌晨......
答案 0 :(得分:4)
如果您知道自己总是在处理有效的电子邮件地址,那么最简单的方法可能是这样:
varEmail = varEmail.Split("@"c)(0)
答案 1 :(得分:4)
第一个给出了电子邮件名称;第二个给出了域名。
dim varEmail as string="myemail@emailserver.com"
MsgBox(varEmail.Substring(0, varEmail.IndexOf("@")))
MsgBox(varEmail.Substring(varEmail.IndexOf("@") + 1))
答案 2 :(得分:2)
为了它的乐趣,这里有一个更老的学校方法仍然可以在.Net中工作(和Matt的答案一样,这假设你知道这是一个有效的电子邮件地址)......
strResult = Mid(varEmail, 1, (InStr(varEmail, "@") - 1))
如果您不确定是否有有效的电子邮件,请在try catch中执行此操作(如果电子邮件无效,则会抛出异常)...
Dim objMail As New System.Net.Mail.MailAddress(varEmail)
strResult = objMail.User
答案 3 :(得分:1)
您可以使用Split方法。例如:
Dim MyString As String = "myemail@emailserver.com"
Dim MyString2() As String
Dim MyString3 As String
MyString2 = Split(MyString, "@", -1, CompareMethod.Binary)
MyString3 = MyString2(0)
现在MyString3 = myemail
答案 4 :(得分:0)
以下是您的问题的解决方案:
Dim value, result as string
value="myemail@emailserver.com"
result = value.Substring(0, value.IndexOf('@')+1)
我希望这会帮助你。