Swift 5: определить все разные подстроки в строке - PullRequest
0 голосов
/ 10 июля 2019

У меня есть следующая строка:

var strOfCharToSort = "azcdczbdxaaczdbbaazdz"

, но я пытаюсь получить количество различных подстрок

, например:

let countofA = strOfCharToSort.filter { $0 == "a" }.count

и это работает, но я не знаю, какие подстроки в загружаемой строке

Я могу отсортировать строку:

strOfCharToSort = String(strOfCharToSort.sorted()) \\ result: aaaaabbbcccddddxzzzzz

Но у меня вопрос к парням, есть ли способ разбить строку, если если найдет другую подстроку?

Я буду очень признателен вам за помощь.

Ответы [ 2 ]

0 голосов
/ 26 июля 2019

Попробуйте

let StringOfChar = "azcdczbdxaaczdbbaazdz"
let SetOfAllChar = Set(StringOfChar)
for char in SetOfAllChar {
    let countofChar = StringOfChar.filter { $0 == char }.count
    print("Count of \(char) : \(countofChar)")
}

Вывод:

Count of d: 4
Count of z: 5
Count of c: 3
Count of b: 3
Count of a: 5
Count of x: 1
0 голосов
/ 10 июля 2019
let strOfCharToSort = "azcdczbdxaaczdbbaazdz"
let setOfChars = Set(strOfCharToSort)
let setOfCharsArray = Array(setOfChars).sorted()
let listOfSortedCharSubstrings = setOfCharsArray.map { (charachter) in
    return strOfCharToSort.filter { $0 == charachter }
}

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...