DeepReplace()
Same as DeepReplaceCS: DeepReplace: recursive replace -- walk nested lists and substitute every occurrence of pOld with pNew. The recursion enters every list sublist; non-list items are compared with Haro's = (deep-equal for lists, value-equal for scalars).
Exemples de base (2)
o1 = new stzList([
"me",
"other",
[ "other", "me", [ "me" ], "other" ],
"other",
"me"
])
o1.DeepReplace("me", :By = "you")
# deepreplace example 1
? @@( o1.Content() )[ "you", "other", [ "other", "you", [ "you" ], "other" ], "other", "you" ]
exécuté le 2026-10-02 04:22 dans la bibliothèque au commit 0e72e2e2c ; tiré de 119_deepreplace.ring(s'ouvre dans un nouvel onglet)
o1 = new stzList([
"1",
"🌞",
"1",
[ "2", "🌞", "2", "🌞"],
"1",
[ "2", ["3", "🌞"] ]
])
? o1.DeepContains("🌞")
? @@( o1.DeepFind("🌞") )
o1.DeepReplace("🌞", :By = "♥")
? @@( o1.Content() )
o1.DeepRemove("♥")
? @@SP( o1.Content() )1 [ [ 2 ], [ 4, 2 ], [ 4, 4 ], [ 6, 2, 2 ] ] [ "1", "♥", "1", [ "2", "♥", "2", "♥" ], "1", [ "2", [ "3", "♥" ] ] ] [ "1", "1", [ "2", "2" ], "1", [ "2", [ "3" ] ] ]
exécuté le 2026-10-02 04:22 dans la bibliothèque au commit 0e72e2e2c ; tiré de 106_deepcontains.ring(s'ouvre dans un nouvel onglet)
Les extensions de cette méthode
Chaque extension, et si elle existe pour cette méthode ; une extension qui existe se compose avec les autres (FindSTCS).
Chaque exemple est un fichier de test de la bibliothèque, exécuté dans la bibliothèque pour cette page ; seuls ceux dont la sortie a tenu toutes les promesses écrites par leur fichier sont montrés. Les explications, les titres et le code sont ceux de la bibliothèque, en anglais.
Voir aussi
- La classe stzList
- La référence du domaine : Collections et objets
- Les autres méthodes de ces exemples : stzList.DeepContains · stzList.DeepFind · stzList.DeepRemove

