Я пытаюсь получить индекс каждого символа в тексте «ABCDCEF» (textBox.text). Проблема в том, что первый индекс «C» равен 2, а второй индекс C - 4, а второй индекс «C» в результате равен 2.получить позицию char в textBox
Это код:
foreach (char character in textBox1.Text)
{
MessageBox.Show(character + " - " + textBox1.Text.IndexOf(character));
}
Результат:
символ - индекс
А - 0
В - 1
С - 2
Д - 3
С - 2
Е - 5
F - 6
Правильный результат должен быть:
символ - индекс
A - 0
В - 1
С - 2
Д - 3
С - 4
Е - 5
F - 6
Почему это происходит?
Благодаря
Это потому, что вам нужно увеличить startIndex на каждой итерации! –
Как сказал Иисус.Посмотрите на [Получить индекс следующего аналогичного символа] (http://stackoverflow.com/questions/23633861/get-index-of-next-same-character) – Tone
@ Тон, как сказано, я думал, что вы имели в виду Христа! Я не видел комментариев выше, хотя ... –