在Swift字符串中使用modulo - 如何将每个其他字母大写?

时间:2015-03-17 19:43:08

标签: string swift replace character modulo

我希望在Swift应用程序中将字符串中的所有其他字母大写。在javascript中我会使用以下内容:

var word = "hello world"

word = word.replace(/[A-z]/g, function(c, i) {
    return i % 2 === 0 ?
      c.toUpperCase() :
      c;
    });

返回:

"HeLlO WoRlD"

你将如何在Swift中实现它?

提前非常感谢,我已经在网上搜索了一个答案而找不到答案,所以任何帮助都会非常感激。

1 个答案:

答案 0 :(得分:1)

如果您希望将两个字母转换为大写字母,那么这应该可以解决问题:

var str = "Hello playground"
var newStr = ""

for (index, char) in enumerate(str) {
    var s = "\(char)"
    if index%2 == 0 {
        newStr += s.uppercaseString
    } else {
        newStr += s
    }
}

println(newStr)

演示:http://swiftstub.com/394531161/

但是,如果您只关注特定范围的大写字母,则可能需要查找replaceRange方法。