Дополнительно
Разделение строки на другую строку в C#
Я использовал метод Split()
для разделения строк, но он работает только в том случае, если вы разделяете строку по символу. Есть ли способ разделить строку
, при этом параметром разделения по символу будет другая строка?
Я пробовал преобразовать разделитель в символьный массив, но безуспешно.
Другими словами, я хотел бы разделить строку
:
THExxQUICKxxBROWNxxFOX
на xx
, и вернуть массив со значениями:
THE, QUICK, BROWN, FOX
627
10
Для разделения по строке вам придется использовать перегрузку string array overload.
Существует перегрузка Split, которая принимает строки.
Вы можете использовать любой из этих вариантов StringSplitOptions
Так, если строка имеет вид "THExxQUICKxxxxxxBROWNxxFOX",
StringSplitOptions.None
вернет пустую запись в массив для части "xxxx", аStringSplitOptions.RemoveEmptyEntries
- нет.вот как я обычно это делаю. Конечно, вам понадобится
но, опять же, мне эта библиотека нужна постоянно.
Там'с перегрузки строка.Сплит для этого:
Я вообще люблю использовать мои собственные расширения для этого:
Однако это приведет к исключение, если Microsoft решит включают этот метод-перегрузка в более поздних версиях. Это тоже вероятная причина, почему Microsoft не включила этот метод в то же время: по крайней мере, одной компании я работал, использовали такие расширения во всех своих проектах c#.
Он также может быть возможным условно определить метод во время выполнения, если это не'т существуют.
В предыдущих ответах все правильно. Я пошел на один шаг дальше и сделать c# работа для меня определение метод расширения на строку:
Таким образом, я могу позвонить на любой строке в простой способ, я наивно ожидал, в первый раз я пытался сделать это:
Просто внимательно выбирайте заменить символ (выбрать одно, что это'т скорее всего, будет присутствовать в уже строку)!
Как из .Чистая ядра 2.0, есть исключение, которое принимает строку.
Так что теперь вы можете сделать
я THExxQUICKxxBROWNxxFOX" и;.Сплит (на"ХХ" - а)
.См https://docs.microsoft.com/en-us/dotnet/api/system.string.split?view=netcore-2.0#System_String_Split_System_String_System_StringSplitOptions_
Это тоже легко:
Самый простой способ-это использовать строку.Заменить:
Или более просто: