Какой метод я могу использовать для получения строки с использованием двухсимвольных индексов? - PullRequest
1 голос
/ 06 марта 2012

Точно так же, как сказано в названии; Я хочу использовать что-то вроде Mid ( stringName , startIndex , [ integerLength ]), но вместо третьего аргумента, принимающего длину строки, я хочу, чтобы взять индекс конца символа. Так в примере, как это

alphabet = "ABCDEFG"
partial = *method I want to use*(alphabet, 2, 4) 'partial would equal "BC"

(Простите, если мои номера индексов выключены, но я надеюсь, что вы поняли мою точку зрения.)

Существует ли что-то подобное в VB.NET?

Ответы [ 3 ]

2 голосов
/ 06 марта 2012

Вы захотите использовать String.Substring

http://msdn.microsoft.com/en-us/library/aka44szs.aspx#Y0

dim alphabet as string = "ABCDEFG"
'partial is a reserved word!
'1,2 is the correct parameters to get 'BC'
dim partialString as string = alphabet.Substring(1, 2) 'partial would equal "BC"

Правка - Ооооооооооооооооценка StartIndex, StopIndex, а не StartIndex, Length.Просто примените немного математики.

dim startIndex as integer = 1
dim stopIndex as integer = 3

'partial would equal "BC"
dim partialString as string = _
    alphabet.Substring(startIndex , stopIndex-startIndex ) 

Я бы обернул это в метод расширения для строки, дав ему новое имя, конечно.

1 голос
/ 06 марта 2012

Просто используйте Mid, математика для длины довольно проста (length = endIndex - startIndex):

part = Mid(alphabet, 2, 4-2)

Вы также можете добиться того же с Substring (которая использует индексы на основе 0, а не 1 на основе):

part = alphabet.Substring(1, 3-1);
0 голосов
/ 06 марта 2012
targetstring=alphabet.Substring(2,4) 

Выше должно работать ..

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...