Sto cercando di tagliare una corda in modo che mi rimanga tutto sul lato destro dei due punti in Swift.
Per esempio
"Sally: Ciao, mi chiamo Sally"
diventa
"Ciao, mi chiamo Sally"
Quale sarebbe la funzione di taglio?
risposte:
0 per risposta № 1Prova questo:
let str = "Sally: Hello My Name is Sally"
let output = str.componentsSeparatedByString(": ").last!
print(output)
0 per risposta № 2
Mentre un'altra risposta ha suggerito di utilizzare componentsSeparatedByString(_:)
e accedendo al suo last
elemento, questo non è infallibile, poiché la stringa potrebbe essere qualcosa di simile Sally: Hello: My Name is Sally
. In questo caso, il risultato atteso sarebbe Hello: My Name is Sally
, ma il risultato effettivo risulta essere My Name is Sally
. Un modo per risolvere questo problema sarebbe semplicemente rimuovere il primo elemento dell'array separato e unire nuovamente l'array rimanente.
let str = "Sally: Hello: My Name is Sally"
let separated = str.componentsSeparatedByString(": ").dropFirst()
let output = separated.joinWithSeparator(": ")