Remplacer et découper du texte
Transformez des chaînes à l’aide d’opérations d’expressions régulières.
Remplacer et découper du texte est une leçon Swift Academy gratuite sur CoddyKit. Ceci est la leçon 4 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Swift Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Swift Academy comprend 4 leçons au total.
Remplacer et découper
Les expressions régulières ne servent pas uniquement à effectuer des correspondances. Les chaînes Swift peuvent remplacer le texte correspondant et découper une chaîne selon un motif, ce qui permet de transformer les chaînes sans boucles manuelles.
replacing(_:with:)
replacing(_:with:) renvoie une nouvelle chaîne dans laquelle chaque correspondance du motif est remplacée par le texte de remplacement.
let s = "a1b2c3"
let cleaned = s.replacing(/\d/, with: "*")
print(cleaned)Remplacer des mots entiers
Le motif peut être n’importe quelle expression régulière ; vous pouvez donc remplacer d’un coup toutes les suites de chiffres avec un seul remplacement.
let s = "order 1234 done"
let masked = s.replacing(/\d+/, with: "#")
print(masked)Modifier sur place avec replace
replace(_:with:) modifie sur place une chaîne var au lieu de renvoyer une copie.
var text = "hello world"
text.replace(/o/, with: "0")
print(text)Remplacer avec une fermeture
La forme de replacing(_:with:) qui utilise une fermeture reçoit chaque correspondance et renvoie le remplacement, ce qui permet d’effectuer des substitutions calculées.
let s = "a1 b2 c3"
let result = s.replacing(/\d+/) { match in
String((Int(match.0) ?? 0) * 10)
}
print(result)Utiliser les captures dans un remplacement
Dans la fermeture, vous pouvez lire les groupes capturants de la correspondance pour construire le texte de remplacement.
let s = "2024-05"
let out = s.replacing(/(\d+)-(\d+)/) { m in
"\(m.2)/\(m.1)"
}
print(out)split(separator:)
Les chaînes prennent en charge split(separator:) avec une expression régulière et découpent la chaîne partout où le motif correspond.
let csv = "a,b;c,d"
let parts = csv.split(separator: /[,;]/)
print(parts)Découper selon les espaces blancs
Une tâche courante consiste à découper une chaîne en mots selon toute suite d’espaces blancs, avec /\s+/.
let line = "the quick brown"
let words = line.split(separator: /\s+/)
print(words.count)
print(words)Limiter les divisions
Le paramètre maxSplits limite le nombre de divisions effectuées, en conservant le reste intact.
let s = "a-b-c-d"
let parts = s.split(separator: /-/, maxSplits: 1)
print(parts)Nettoyer et remplacer
Combinez les opérations : remplacez les motifs indésirables, puis découpez la chaîne afin de nettoyer et de transformer l’entrée dans un pipeline.
let raw = " one,, two ,,three "
let cleaned = raw.replacing(/,+/, with: ",")
let items = cleaned.split(separator: ",").map { $0.trimmingCharacters(in: .whitespaces) }
print(items)replacing ou replacingOccurrences
replacing fonctionne avec des motifs ; l’ancien replacingOccurrences(of:with:) ne traite que les sous-chaînes littérales. Préférez la forme avec expression régulière pour les modifications fondées sur des motifs.
let s = "cat hat bat"
print(s.replacing(/[ch]at/, with: "X"))Vérification rapide
Que produit "a1b2".replacing(/\d/, with: "-") ?
Récapitulatif
Vous pouvez remplacer les correspondances avec replacing(_:with:) (sous forme de chaîne ou de fermeture) et avec replace sur place, ainsi que découper les chaînes selon une expression régulière avec split(separator:) et maxSplits. Ces outils transforment les expressions régulières en une boîte à outils complète de transformation de texte.
Questions Fréquemment Posées
La leçon « Remplacer et découper du texte » est-elle gratuite ?
Oui — le texte complet de « Remplacer et découper du texte » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Swift Academy, passe à CoddyKit PRO. Le cours Swift Academy comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Remplacer et découper du texte » ?
Transformez des chaînes à l’aide d’opérations d’expressions régulières. Tu pratiques Swift Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer Swift Academy ?
Aucune expérience préalable n'est requise. Swift Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 4 sur 4.
Combien de temps prend la leçon « Remplacer et découper du texte » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon Swift Academy ?
Oui. Chaque leçon Swift Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Littéraux Regex et correspondance
- Groupes de capture
- DSL RegexBuilder
- Remplacer et découper du texte