concatenar - swift 4 count characters in string
¿Cómo concateno cadenas en Swift? (14)
Acabo de cambiar de Objective-C a Swift (4) y encuentro que a menudo uso:
let allWords = String(format:"%@ %@ %@",message.body!, message.subject!, message.senderName!)
Cómo concatenar cadena en Swift.?
En Objective-C
nos gusta
NSString *string = @"Swift";
NSString *resultStr = [string stringByAppendingString:@" is new Programming Language"];
o
NSString *resultStr=[NSString stringWithFormat:@"%@ is new Programming Language",string];
Pero quiero hacer esto en Swift-language.
Ahora puede usar stringByAppendingString en Swift.
var string = "Swift"
var resultString = string.stringByAppendingString(" is new Programming Language")
Esto también funcionará:
var string = "swift"
var resultStr = string + " is a new Programming Language"
Para imprimir la cadena combinada usando
Println("/(string1)/(string2)")
o String3 almacena la salida de la combinación de 2 cuerdas
let strin3 = "/(string1)/(string2)"
Puede agregar una cadena de estas maneras:
-
str += ""
-
str = str + ""
-
str = str + str2
-
str = "" + ""
-
str = "/(variable)"
-
str = str + "/(variable)"
Creo que los llamé a todos.
Puede concatenar cadenas de varias maneras:
let a = "Hello"
let b = "World"
let first = a + ", " + b
let second = "/(a), /(b)"
También podrías hacer:
var c = "Hello"
c += ", World"
Estoy seguro de que hay más formas también.
Un poco de descripción
let
crea una constante. (algo así como un NSString
). No puede cambiar su valor una vez que lo haya configurado. Todavía puede agregarlo a otras cosas y crear nuevas variables.
var
crea una variable. (algo así como NSMutableString
) para que pueda cambiar el valor de la misma. Pero esto ha sido respondido varias veces en , (vea la diferencia entre let y var ).
Nota
En realidad, let
y var
son muy diferentes de NSString
y NSMutableString
pero ayudan a la analogía.
Puede usar SwiftString ( https://github.com/amayne/SwiftString ) para hacer esto.
"".join(["string1", "string2", "string3"]) // "string1string2string"
" ".join(["hello", "world"]) // "hello world"
DESCARGO DE RESPONSABILIDAD: escribí esta extensión
Se llama Interpolación de cadenas. Es una forma de crear NUEVA cadena con CONSTANTES, VARIABLES, LITERALES y EXPRESIONES. por ejemplo:
let price = 3
let staringValue = "The price of /(price) mangoes is equal to /(price*price) "
además
let string1 = "anil"
let string2 = "gupta"
let fullName = string1 + string2 // fullName is equal to "anilgupta"
or
let fullName = "/(string1)/(string2)" // fullName is equal to "anilgupta"
también significa valores de cadena concatenados.
Espero que esto te ayude.
También se puede usar stringByAppendingFormat en Swift.
var finalString : NSString = NSString(string: "Hello")
finalString = finalString.stringByAppendingFormat("%@", " World")
print(finalString) //Output:- Hello World
finalString = finalString.stringByAppendingFormat("%@", " Of People")
print(finalString) //Output:- Hello World Of People
XCode no aceptó cadenas opcionales añadidas con una cadena normal. Escribí estas extensiones para resolver ese problema:
extension String {
mutating func addString(str: String) {
self = self + str
}
}
Entonces puedes llamarlo así:
var str1: String?
var str1 = "hi"
var str2 = " my name is"
str1.addString(str2)
println(str1) //hi my name is
Sin embargo, ahora también puedes hacer algo como esto:
var str1: String?
var str1 = "hi"
var str2 = " my name is"
str1! += str2
/ esto se está utilizando para agregar una cadena a otra cadena.
var first = "Hi"
var combineStr = "/(first) Start develop app for swift"
Puede probar esto también: - + palabra clave.
var first = "Hi"
var combineStr = "+(first) Start develop app for swift"
Prueba este código
Muy simple:
let StringA = "Hello"
let StringB = "World"
let ResultString = "/(StringA)/(StringB)"
println("Concatenated result = /(ResultString)")
let the_string = "Swift"
let resultString = "/(the_string) is a new Programming Language"
var language = "Swift"
var resultStr = "/(language) is new Programming Language"