断线

时间:2012-02-16 16:28:42

标签: vb.net string substring indexof

我有一个字符串,其中有两个部分由 - 分隔。当我将此值传递给我的新页面时,我只想要第一部分。

示例值为:MS 25 - 25

我只想表明:MS 25

我正在查看IndexOf()和SubString(),但我找不到如何获取字符串的开头并放弃结束。

2 个答案:

答案 0 :(得分:1)

您可以在连字符上使用Split功能。

.Split("-")

如果您想远离Split,可以使用SubString

yourString.Substring(0, yourString.IndexOf("-") - 1)

修改

在没有连字符或连字符位于字符串开头的情况下,上面的代码将失败,当连字符周围没有空格时,也不会返回完整的前导子字符串。考虑将其用于安全:

Dim pos As Integer
Dim result As String

pos = yourString.IndexOf("-")
If (pos > 0) Then
    result = yourString.Substring(0, pos)
ElseIf (pos = 0) Then
    result = String.Empty
Else
    result = yourString
End If

答案 1 :(得分:1)

这可能会有所帮助: http://www.homeandlearn.co.uk/net/nets7p5.html

基本上,substring方法有2个参数。开始位置和长度。

在您的情况下,起始位置为0,长度将是IndexOf方法-1找到的位置。

例如:

Dim s as String
Dim result as String

s = "MS 25 - 25"

result = s.SubString(0, s.IndexOf("-")-1)