Remplacement des chaînes dans PowerShell

  1. Introduction aux chaînes PowerShell
  2. Utiliser la fonction replace() dans PowerShell
  3. Supprimer des caractères à l’aide de la fonction replace() dans PowerShell
  4. Remplacer plusieurs chaînes d’instance à l’aide de la fonction replace() dans PowerShell
  5. Utiliser l’opérateur de remplacement PowerShell
  6. Supprimer des caractères à l’aide de l’opérateur de remplacement dans PowerShell
  7. Remplacer plusieurs chaînes d’instance à l’aide de l’opérateur de remplacement dans PowerShell
Remplacement des chaînes dans PowerShell

PowerShell peut fonctionner avec des chaînes et du texte comme de nombreuses langues. L’une de ces fonctionnalités précieuses consiste à utiliser PowerShell pour remplacer des caractères, des chaînes ou du texte dans des fichiers.

Cet article traitera de la méthode PowerShell replace() et de l’opérateur de remplacement PowerShell.

Introduction aux chaînes PowerShell

L’un des cas les plus simples d’utilisation de PowerShell consiste à remplacer des caractères dans des chaînes. Supposons que nous ayons une chaîne PowerShell avec une valeur hello, world.

Exemple de code :

$string = 'hello, world'

Nous voulons remplacer la chaîne hello à l’intérieur de cette variable par la chaîne hi pour changer la variable $string pour avoir une valeur finale de hi, world.

Pour ce faire, PowerShell doit d’abord déterminer où trouver le texte spécifique à remplacer, et une fois qu’il est localisé, il remplace le texte par une valeur de variable personnalisée définie par l’utilisateur.

Utiliser la fonction replace() dans PowerShell

L’un des moyens pratiques de remplacer des chaînes dans Windows PowerShell consiste à utiliser la fonction replace(), comme indiqué ci-dessous. La fonction replace() a deux arguments, la chaîne à rechercher et la chaîne à remplacer le texte trouvé.

Comme nous pouvons le voir ci-dessous, Windows PowerShell trouve la chaîne hello et remplace cette chaîne par la chaîne hi. La méthode retourne alors le résultat final, hi, world.

Exemple de code :

$string.replace('hello','hi')

Production:

hi, world

Nous pouvons appeler la méthode replace() sur n’importe quelle chaîne pour remplacer n’importe quelle chaîne littérale par une autre. La méthode replace() ne renvoie rien si la chaîne à remplacer n’est pas trouvée.

Il convient de noter que nous n’avons pas besoin d’affecter une chaîne à une variable pour remplacer le texte dans une chaîne. Au lieu de cela, nous pouvons invoquer la méthode replace() directement sur la chaîne comme : 'hello world'.replace('hello','hi').

Supprimer des caractères à l’aide de la fonction replace() dans PowerShell

Peut-être voulons-nous supprimer des caractères d’une chaîne d’une autre chaîne plutôt que de la remplacer par autre chose. Nous pouvons également le faire en spécifiant une chaîne vide.

Exemple de code :

$string.replace('hello','')

Production:

, world

Remplacer plusieurs chaînes d’instance à l’aide de la fonction replace() dans PowerShell

Puisque la fonction replace() renvoie une chaîne, pour remplacer une autre instance, vous pouvez ajouter un autre appel de fonction replace() à la fin. Windows PowerShell appelle ensuite la méthode replace() sur la sortie d’origine.

Exemple de code :

$string.replace('hello','').replace('world','globe')

Production:

, globe

Nous pouvons enchaîner autant d’appels de fonction replace() que nécessaire, mais nous devrions envisager d’utiliser l’opérateur de remplacement si nous avons de nombreuses chaînes à remplacer.

Utiliser l’opérateur de remplacement PowerShell

On peut aussi utiliser l’opérateur -replace de Windows PowerShell pour remplacer un texte. L’opérateur -replace est similaire à la méthode.

Nous fournissons une chaîne à rechercher et à remplacer. En utilisant l’exemple ci-dessus, nous pouvons utiliser l’opérateur de remplacement pour remplacer bonjour par salut de la même manière, comme indiqué ci-dessous.

Exemple de code :

$string -replace 'hello','hi'

Production:

hi, world

Supprimer des caractères à l’aide de l’opérateur de remplacement dans PowerShell

Comme la fonction replace(), vous pouvez également supprimer des caractères d’une chaîne à l’aide de l’opérateur de remplacement. Mais, contrairement à la méthode replace(), vous pouvez également exclure complètement la chaîne en tant qu’argument à remplacer, et vous découvrirez le même effet.

Exemple de code :

$string -replace 'hello',''

Production:

, world

Remplacer plusieurs chaînes d’instance à l’aide de l’opérateur de remplacement dans PowerShell

Comme la méthode replace(), vous pouvez également enchaîner les utilisations de l’opérateur de remplacement. Cependant, puisque l’opérateur de remplacement renvoie une chaîne, comme indiqué ci-dessous.

Exemple de code :

$string -replace 'hello','hi' -replace 'world','globe'

Production:

hi, globe
Vous aimez nos tutoriels ? Abonnez-vous à DelftStack sur YouTube pour nous aider à créer davantage de tutoriels vidéo de haute qualité. Abonnez-vous
Marion Paul Kenneth Mendoza avatar Marion Paul Kenneth Mendoza avatar

Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.

LinkedIn

Article connexe - PowerShell String