Първо, API на Swift 4 за String е подсилен с много мощни възможности. Низовете и манипулациите с низове са от съществено значение за всяко или повечето решения. Езикът Swift предлага мощен начин да направите това. Така че нека прегледаме някои от езиковите възможности.

За да създадете низ, можете да го присвоите на свойство:

Ами ако искате да повторите низ няколко пъти? Можете да използвате функцията за повтаряне:

Понякога трябва да представите многоредов низ и това може да се направи лесно с 3 отварящи кавички и 3 затварящи кавички. Всеки ред в многоредовия низов литерал съдържа знак за край на реда \n.

За да анализирате всеки знак в низ, можете да направите следното:

Има няколко начина да получите частта от низа или съдържанието между двата абзаца.

Нека обясня какво се случва. Първият подход по-горе прави предположение, че етикетите ‹p›‹/p› съществуват. Така че използваме фиксирано отместване от началото и края на низа, за да извлечем средната част. От друга страна, можем да използваме втория подход, за да определим индекса въз основа на разпознаваеми части от таговете ‹p›‹/p›. Тъй като може да не намерим съвпадащия индекс, по подразбиране използваме началния и крайния индекс на оригиналния низ. Кой начин предпочитате? Има ли по-добър начин да направите същото? Чувствайте се свободни да го споделите в коментарите по-долу.

Понякога може да се наложи да идентифицираме позицията на знака в низа. Как да направим това?

Обърнете внимание, че ние придвижваме напред отместването с номера на позицията от началния индекс на низа всеки път, за да извлечем следващия знак. Понякога може да ви интересува само позицията на „x“ и „o“, така че можете да използвате сравнения, за да ги отпечатате само. Вижте следния пример:

Има случаи, в които ще трябва да работите с думи вместо с букви в низа. По-долу е даден пример за функция, която приема String и връща String със заглавен регистър, който спазва някои правила.

Нека прегледаме какво се случва с горния код.

  1. Заглавният низ е разделен на празно място и списък с думи се съхранява в променливата, наречена думи.
  2. Първият в заглавието String ще трябва да бъде изписан с главна буква, независимо дали се съдържа в набора от низове, които не трябва да бъдат изписани с главна буква.
  3. Думите в средата на заглавието се сравняват с набора от думи без главни букви и се добавят към променливата properCapitalization. Трябва да се уверите, че сравнението е извършено без разлика между главни и малки букви.
  4. Последната дума в заглавния низ следва същото правило като коментар 2.

Накъде да отида от тук?

Манипулирането на низове в Swift измина дълъг път. Разгледайте документацията на Apple за повече: Swift Standard Library Reference — String и публикувайте някои от любимите си манипулации на String в коментарите по-долу.