Todavía no he podido descubrir cómo obtener una subcadena de a String
en Swift:
var str = “Hello, playground”
func test(str: String) -> String {
return str.substringWithRange( /* What goes here? */ )
}
test (str)
No puedo crear un Rango en Swift. Autocompletar en el área de juegos no es muy útil: esto es lo que sugiere:
return str.substringWithRange(aRange: Range<String.Index>)
No he encontrado nada en la Biblioteca de referencia estándar de Swift que me ayude. Aquí había otra conjetura salvaje:
return str.substringWithRange(Range(0, 1))
Y esto:
let r:Range<String.Index> = Range<String.Index>(start: 0, end: 2)
return str.substringWithRange(r)
He visto otras respuestas ( Búsqueda de índice de caracteres en Swift String ) que parecen sugerir que, dado que String
es un tipo de puente NSString
, los métodos "antiguos" deberían funcionar, pero no está claro cómo, por ejemplo, esto tampoco funciona ( no parece ser una sintaxis válida):
let x = str.substringWithRange(NSMakeRange(0, 3))
Pensamientos?