Comment concaténer une chaîne dans Swift?
En Objective-C
nous aimons
NSString *string = @"Swift";
NSString *resultStr = [string stringByAppendingString:@" is a new Programming Language"];
ou
NSString *resultStr=[NSString stringWithFormat:@"%@ is a new Programming Language",string];
Mais je veux faire cela en langage Swift.
string
swift
concat
string-concatenation
Rajneesh071
la source
la source
Réponses:
Vous pouvez concaténer des chaînes de plusieurs manières:
Vous pouvez également faire:
Je suis sûr qu'il existe également d'autres moyens.
Un peu de description
let
crée une constante. (un peu comme unNSString
). Vous ne pouvez pas modifier sa valeur une fois que vous l'avez définie. Vous pouvez toujours l'ajouter à d'autres choses et créer de nouvelles variables.var
crée une variable. (un peu commeNSMutableString
) afin que vous puissiez en changer la valeur. Mais cela a été répondu à plusieurs reprises sur Stack Overflow, (voir la différence entre let et var ).Remarque
En réalité
let
etvar
sont très différents deNSString
etNSMutableString
mais cela aide l'analogie.la source
let
crée une constante. (un peu comme une NSString). Vous ne pouvez pas modifier sa valeur une fois que vous l'avez définie. Vous pouvez toujours l'ajouter à d'autres choses et créer de nouvelles variables.var
créer une variable. (un peu comme NSMutableString) afin que vous puissiez en changer la valeur. Mais cela a été répondu à plusieurs reprises sur SO. Recherchedifference between let and var
Vous pouvez ajouter une chaîne de ces manières:
str += ""
str = str + ""
str = str + str2
str = "" + ""
str = "\(variable)"
str = str + "\(variable)"
Je pense que je les ai tous nommés.
la source
la source
Cela fonctionnera aussi:
la source
\ ceci est utilisé pour ajouter une chaîne à une autre chaîne.
Vous pouvez également essayer ceci: - + mot-clé.
Essayez ce code.
la source
la source
Très simple:
la source
let ResultString = "\(StringA)\(StringB)"
Vous pouvez maintenant utiliser stringByAppendingString dans Swift.
la source
Xcode n'a pas accepté les chaînes facultatives ajoutées avec une chaîne normale. J'ai écrit ces extensions pour résoudre ce problème:
Ensuite, vous pouvez l'appeler comme:
Cependant, vous pouvez maintenant faire quelque chose comme ceci:
la source
Cela s'appelle l'interpolation de chaîne. C'est une façon de créer une NOUVELLE chaîne avec CONSTANTS, VARIABLE, LITERALS et EXPRESSIONS. pour des exemples:
aussi
cela signifie également que les valeurs de chaîne de concaténation.
J'espère que cela vous aide.
la source
Pour imprimer la chaîne combinée en utilisant
ou String3 stocke la sortie de la combinaison de 2 chaînes
la source
On peut également utiliser stringByAppendingFormat dans Swift.
la source
Swift 4.2
Vous pouvez également utiliser une extension:
Utilisation:
Résultat:
la source
De: Matt Neuburg Book "iOS 13 Programming Fundamentals with Swift." :
Pour combiner (concaténer) deux chaînes, l' approche la plus simple consiste à utiliser l' opérateur + :
Cette notation pratique est possible car l' opérateur + est surchargé: il fait une chose lorsque les opérandes sont des nombres (addition numérique) et une autre lorsque les opérandes sont des chaînes (concaténation). L' opérateur + est livré avec un raccourci d' affectation + = ; naturellement, la variable sur le côté gauche doit avoir été déclarée avec var:
Comme alternative à + = , vous pouvez appeler la méthode d'instance append (_ :) :
Une autre façon de concaténer des chaînes est d' utiliser la méthode join (separator :) . Vous commencez par un tableau de chaînes à concaténer et lui donnez la chaîne à insérer entre toutes:
la source
Vous pouvez utiliser SwiftString ( https://github.com/amayne/SwiftString ) pour ce faire.
DISCLAIMER: j'ai écrit cette extension
la source
Je viens de passer d'Objective-C à Swift (4), et je trouve que j'utilise souvent:
la source
Dans Swift 5, Apple a introduit Raw Strings en utilisant les symboles #.
Exemple:
le symbole # est nécessaire après \. Un \ (nom) normal sera interprété comme des caractères dans la chaîne.
la source
Swift 5
Vous pouvez y parvenir en utilisant l'
appending
API. Cela renvoie une nouvelle chaîne créée en ajoutant une chaîne donnée au récepteur.Détails de l'API: ici
Utilisez :
Résultat :
la source