Question
Remplacer une chaîne dans un fichier texte
- CERLAND
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 6
- Remerciements reçus 0
il y a 13 ans 9 mois #11894
par CERLAND
Réponse de CERLAND sur le sujet Re:Remplacer une chaîne dans un fichier texte
Niiiiiiickel ... je vous remercie tous les deux par la soluce !!
Avec une préférence aussi pour celle de Laurent
Avec une préférence aussi pour celle de Laurent
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 6311
- Remerciements reçus 68
il y a 13 ans 9 mois #11896
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Re:Remplacer une chaîne dans un fichier texte
akysirbu écrit:
Matthew BETTON écrit:
Je pensais proposer l'échappement caractère par caractère, mais d'une part je ne les connais pas tous, et d'autre part cela rend le code illisible et empêche la reconnaissance, dans le code, des patterns recherchés.
Mais quelques fois on ne peut pas faire autrement, par exemple lors de la construction dynamique de regex ou une regex contenant une substitution :
[code:1]
#$$$2 échappe le caractère dollar dans une regex
$Ligne = $Ligne -replace \"^(.*)\(this.(.*), resources.GetString\((.*)\)\)$\", '$1($$$2, $Ressources[$3])'
[/code:1]
Sinon la méthode contraire [code:1][regex]::unEscape($UneRegexEchappée)[/code:1]
Je n'y suis pour rien, c'est les concepteurs des classes d'expression régulières dotnet qu'il faut féliciter, avec eux les regex \"c'est facile\".Avec une préférence aussi pour celle de Laurent
Matthew BETTON écrit:
Les trois points font partis des regexQuelques caractères spéciaux : $ ( ) * + . [ ] ? \ / ^ { } < > |
Je pensais proposer l'échappement caractère par caractère, mais d'une part je ne les connais pas tous, et d'autre part cela rend le code illisible et empêche la reconnaissance, dans le code, des patterns recherchés.
Mais quelques fois on ne peut pas faire autrement, par exemple lors de la construction dynamique de regex ou une regex contenant une substitution :
[code:1]
#$$$2 échappe le caractère dollar dans une regex
$Ligne = $Ligne -replace \"^(.*)\(this.(.*), resources.GetString\((.*)\)\)$\", '$1($$$2, $Ressources[$3])'
[/code:1]
Sinon la méthode contraire [code:1][regex]::unEscape($UneRegexEchappée)[/code:1]
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.041 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- Remplacer une chaîne dans un fichier texte