gpt4 book ai didi

swift - 将字符串格式化为 Pascal 大小写

转载 作者:行者123 更新时间:2023-11-28 11:55:57 27 4
gpt4 key购买 nike

使用 Swift 4,如何使用这些规则格式化字符串:

  • 如果单词超过 3 个字母,则首字母大写,否则大写

  • 包含像 St-Michel 这样的连字符的 Pascal 大小写单词

我这里有初稿,但我一直在思考如何解决第二点。另外,目前我在不应该的时候在末尾添加了一个空格。

var pascalCase: String {
return self.components(separatedBy: " ")
.map {
if $0.count > 3 {
return $0.uppercased()
} else {
return $0.lowercased().capitalizingFirstLetter()
}
}
.map { return $0 + " " }
.joined()
}

最佳答案

假设我的要求正确无误,这可行:

extension String {
var pascalCase: String {
return self.components(separatedBy: " ")
.map {
if $0.count <= 3 {
return $0.uppercased()
} else {
if $0.index(of: "-") != nil {
return $0.components(separatedBy: "-").map { $0.pascalCase }.joined(separator: "-")
} else {
return $0.capitalized
}
}
}
.joined(separator: " ")
}
}

print("hello".pascalCase)
print("hi".pascalCase)
print("this is fun".pascalCase)
print("st-michael".pascalCase)

结果:

Hello
HI
This IS FUN
ST-Michael

关于swift - 将字符串格式化为 Pascal 大小写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50975037/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com