如何在字符串中的特定符号之前获取字符串

How to get string before a particular symbol within a string

vb.net 有什么方法可以从电子邮件地址获取用户名吗?

例如,我有一个字符串变量,它由值 tracywilly@gmail.com 组成,这里我需要获取用户名,即 tracywilly 是我的预期输出

Dim email_addr as string
Dim usr as string
email_addr = "tracywilly@gmail.com"

您可以在 vb.net

中使用 split()regex 来实现此目的

查看以下方法

1.) split() 函数:

 Function username(ByVal str As String) As String
        Dim arStr As String()
        arStr = str.Split("@")
        username = arStr(0)
        Return username
    End Function

2.) regex:

Function username_1(ByVal str As String) As String
    username_1 = System.Text.RegularExpressions.Regex.Match(str, "^.*?(?=@)").ToString
    Return username_1
End Function

它是如何工作的?

Dim email_addr as string
Dim usr as string
email_addr = "tracywilly@gmail.com"
usr = username(email_addr)
usr = username_1(email_addr)

Live Demo