比如我有有一个string,“hello how are you”, 我想把它变成一个反句 “olleh woh era uoy”, 这里不是指把句子变反,而是把里面每个单词变成反向
func reverseWords(someString: String) -> String {
let allWordsArray = someString.components(separatedBy: " ")
var newString = ""
for word in allWordsArray {
let reverseWord = word.reversed()
newString += reverseWord
newString += " "
}
return newString.removeSomeLetter()
}
比较简单的一个练习题,逻辑就是先把这个stirng变成一个array,把里面每个单词看作是一个elements,这里用components(separatedBy)关键字, 然后在把每个单词都变反向,用reversed关键字,在添加到newString里。
print(reverseWords(someString: "hello hello hello you I am fine, you?"))
// olleh olleh olleh uoy I ma ,enif ?uoy
这里还有一个附加题,是把里面的所有的元音给去掉。
extension String {
func removeSomeLetter() -> String {
var newWord = self
let vowel = ["a", "e", "i", "o", "u"]
for letter in vowel {
newWord = newWord.replacingOccurrences(of: letter, with: " ")
}
return newWord
}
}
print(reverseWords(someString: "hello hello hello you I am fine, you?").removeSomeLetter())
// ll h ll h ll h y I m , n f ? y