Swift IOS,如何大写应用程序用户输入的情感字母,例如;第4个字母和第6个字母?

时间:2018-10-07 11:59:09

标签: ios swift

用户在文本字段中输入一个句子, 然后在一个文本字段中输入数字4,在另一个文本字段中输入数字6。将第4个字母和第6个字母位于的句子大写。

例如,用户输入:“一年中有12个月”

输出为:“一年12个月”。

如何在一个句子中大写4-6个字母?

1 个答案:

答案 0 :(得分:2)

这是您要找的吗?

num2cell

如果您只想对字母进行计数,并且要从1开始计数,则

func capitalize(string: String, positions: IndexSet) -> String {
    let range = (0..<string.count)
    guard string.count > 0,
        positions.allSatisfy({ range ~= $0 }) else {
        fatalError("Couldn't capitalize")
    }

    return String(string.enumerated().map{ (index, char) in
        return positions.contains(index) ? String(char).capitalized.first! : char
    })
}

var str = "there are 12 months in a year"
capitalize(string: str, positions: [3, 6])  //"theRe Are 12 months in a year"