私はあなたが達成したいものになどやや不確かなんだけど、あなたが好きなようで、例えばのために指定されたセパレータの後ろに部分文字列を作成するための文字列foo-bar
。 bar
が与えられている。foo-bar
。
これは実装しようとしている方法よりも複雑ではありません。
など。 String
のcomponents(separatedBy: "-")
方法を使用して、他の代替として、
let anyWord = "foo-bar"
if let chars = anyWord.characters
.split(separator: Character("-"), maxSplits: 1)
.dropFirst(1).last {
let bar = String(chars)
print(bar) // bar
}
または:
let anyWord = "foo-bar"
if let separator = anyWord.characters.index(of: "-") {
let subStartIndex = anyWord.characters.index(after: separator)
let bar = anyWord[subStartIndex..<anyWord.endIndex]
print(bar) // bar
}
あるいは、別の代替として、.characters
(コレクション)に適用Collection
のsplit(separator:maxSplits:omittingEmptySubsequences:)
方法を使用
import Foundation
let anyWord = "foo-bar"
let bar = anyWord.components(separatedBy: "-").dropFirst(1).reduce("", +)
print(bar) // bar
'Range'の' upperBound'をきれいに使います! – dfri