Основы языка C# 2005. Евсеева О.Н - 122 стр.

UptoLike

Составители: 

126
Рисунок 30. Разбор и сборка строки текста
Обратите внимание, что методы Split и Join хорошо работают, когда при
разборе используется только один разделитель. В этом случае сборка
действительно является обратной операцией и позволяет восстановить
исходную строку. Если же при разборе задается некоторое множество
разделителей, то возникают две проблемы:
1. невозможно при сборке восстановить строку в прежнем виде, поскольку не
сохраняется информация о том, какой из разделителей был использован при
разборе строки. Поэтому при сборке между элементами вставляется один
разделитель, возможно, состоящий из нескольких символов;
2. при разборе двух подряд идущих разделителей предполагается, что между
ними находится пустое слово. Обратите внимание в тексте нашего примера,
как и положено, после запятой следует пробел. При разборе текста на слова
в качестве разделителей указаны символы пробела и запятой. По этой
причине в массиве слов, полученном в результате разбора, имеются пустые
слова.
Если при разборе предложения на слова использовать в качестве
разделителя только пробел, то пустые слова не появятся, но запятая будет
являться частью некоторых слов.
Как всегда, есть несколько способов справиться с проблемой. Один из
них состоит в том, чтобы написать собственную реализацию этих функций,
другойв корректировке полученных результатов, третийв использовании
более мощного аппарата регулярных выражений.