消除VB.NET中的字符串部分

时间:2012-02-29 15:13:29

标签: asp.net vb.net string

假设我有一个变量:varEmail。它包含一个等于用户电子邮件地址的变量,因此它可能包含如下值:

  

“myemail@emailserver.com”

现在,我想说我只想获得一部分电子邮件地址,例如剥离域名,如下:

  

“myemail”

如何在VB.NET中使用字符串操作完成此操作?我知道这一定很简单......也许就在凌晨......

5 个答案:

答案 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)

我希望这会帮助你。