Aurelio Nogar Ответов: 2

Могу ли я использовать 2 символа в indexof и index в C#?


Indexof(', ', int32, int32, stringcomparison)

У меня есть настроенное текстовое поле, которое самовнушается и показывает список. Я хочу, чтобы он предлагал каждое после запятой с пробелом", " а не просто пробел или запятую. Заранее спасибо. Кстати, я новичок в c#. Я использую winforms.

Что я уже пробовал:

Пока нет. Я все еще ищу материалы и знания для этого.

2 Ответов

Рейтинг:
12

Jochen Arndt

См. список следующих объектов: Строка.Метод IndexOf (Система)[^] перегрузки. Официальная документация всегда читается первой, когда вы не уверены. Он также часто содержит список связанных функций, которые могут делать то, что вы хотите, когда начальная функция этого не делает.

Если вы хотите найти ", ", используйте один из следующих вариантов: IndexOf методы, принимающие строку:

Цитата:
Сообщает нулевой индекс первого вхождения указанной строки в текущий строковый объект.
Обратите также внимание, что нет необходимости использовать перегрузку, принимающую comparisonType для строки поиска, содержащей только символы ASCII.

Если вы хотите найти более сложные случаи (например, запятую, за которой необязательно следует один или несколько пробелов), взгляните на регулярные выражения. Но когда задача может быть выполнена с помощью базовой функции, как здесь, используйте ее.


Aurelio Nogar

Это последующий вопрос. Как насчет разбиения строки на 2 символа?

var result = str.Split(new char[] {', '});

Jochen Arndt

Тот же ответ. См. раздел перегрузки для строки.Split(), здесь Строка.Метод Split (String[], StringSplitOptions)

OriginalGriff

Я бы поддержал это, если бы вы могли поддержать комментарии...

Рейтинг:
1

OriginalGriff

Да: Строка.Метод IndexOf (Строка) (Система)[^]

int index = myString.IndexOf(", ");


Aurelio Nogar

Это последующий вопрос. Как насчет разбиения строки на 2 символа?

var result = str.Split(new char[] {', '});