Подтвердить что ты не робот

Слева от символа в строке в vb.net

скажем, если у меня есть строка 010451-09F2

Как я могу получить слева - из приведенной выше строки в vb.net

Я хочу 010451

Левая функция не позволяет указать символ разделителя.

Спасибо

4b9b3361

Ответ 1

Дано:

Dim strOrig = "010451-09F2"

Вы можете выполнить любое из следующих действий:

Dim leftString = strOrig.Substring(0, strOrig.IndexOf("-"))

Или:

Dim leftString = strOrig.Split("-"c)(0) ' Take the first index in the array

Или:

Dim leftString = Left(strOrig, InStr(strOrig, "-"))
' Could also be: Mid(strOrig, 0, InStr(strOrig, "-"))

Ответ 2

Dim str As String = "010451-09F2"
Dim leftPart As String = str.Split("-")(0)

Split дает вам левую и правую части массива строк. Доступ к первому элементу (индекс 0) дает вам левую часть.

Ответ 3

Извините, не уверен в синтаксисе vb, но С# -

 string mystring ="010451-09F2";
 string whatIwant = mystring.Split('-')[0];

Ответ 4

Сначала выберите местоположение элемента управления (или сделайте его встроенным) и используйте это значение для левой части. Это старая школа VBA, но это будет примерно так:

Влево (YourStringWithTheDash, InStr (YourStringWithTheDash) -1)

Ответ 5

dim s as String = "010451-09F2"
Console.WriteLine(s.Substring(0, s.IndexOf("-")))
Console.WriteLine(s.Split("-")(0))

Ответ 6

Используйте что-то вроде этого:

Средние ( "010451-09F2", 1, InStr ( "-" ))

Ответ 7

    Dim sValue As String = "010451-09F2"
    Debug.WriteLine(sValue.Substring(0, sValue.IndexOf("-"c)))