Поскольку вы устраняете исходную пунктуацию, невозможно автоматически вернуть ее обратно.
Единственный способ - не использовать componentsSeparatedByCharactersInSet
.
Альтернативным решением может быть итерациястрока и, для каждого символа, проверьте, принадлежит ли он вашему набору символов.
Если да, добавьте символ в список и подстроку в другой список (вы можете использовать NSMutableArray
class).Таким образом, например, вы знаете, что символ пунктуации между первой и второй подстрокой является первым символом в вашем списке разделителей.