У меня есть такая строка: @"10/04/2011"
и я хочу сохранить только «10» в другой строке. Как я могу это сделать?
objective-c
swift
string
nsstring
cyclingIsBetter
источник
источник
Ответы:
Обновление 3/3/2018:
Теперь, когда вопрос получил тег Swift, я должен добавить способ Swift сделать это. Это довольно просто:
Хотя обратите внимание, что это дает вам массив
Substring
. Если вам нужно преобразовать их обратно в обычные строки, используйтеmap
или
источник
[foo firstObject]
может быть лучше в общем случае, потому что оно также будет правильно обрабатывать пустой массив.Любой из этих 2:
Однако имейте в виду, что иногда строка даты не форматируется должным образом, и день (или месяц в этом отношении) отображается как 8, а не как 08, поэтому первое из них может быть худшим из двух решений.
Последний должен быть помещен в отдельный массив, чтобы вы могли на самом деле проверить длину возвращаемой вещи, чтобы вы не получили никаких исключений в случае поврежденной или недопустимой строки даты из любого источника, который у вас есть.
источник
Работает нормально
источник
Objective-C:
Swift:
источник
использование
[myString componentsSeparatedByString:@"/"]
источник
Я отформатировал хорошее решение, предоставленное JeremyP выше, в более общую функцию многократного использования ниже:
источник
Версия Swift 3.0
источник