PowerShell : Supprimer le dernier caractère d’une chaîne

I. Présentation

Manipuler des chaînes de caractères est quelque chose d'incontournable lorsque l'on fait du scripting, PowerShell n'échappe pas à cette règle. Dans ce tutoriel, je vous partage une astuce toute simple mais bien pratique : supprimer le dernier caractère d'une chaîne en PowerShell.

II. Length et SubString à votre service

On va, par exemple, supprimer le dernier caractère de la variable $UserLogin. On va utiliser la méthode "Substring" qui fait partie de l'arsenal de méthodes disponibles pour agir sur les chaînes de caractères en PS. Celle-ci permet d'extraire/conserver seulement un morceau d'une chaîne : on indique le caractère de départ et le caractère de fin qu'il faut conserver.

Zéro étant le premier caractère. Par contre, en fonction de la longueur de la chaîne le dernier identifiant sera différent, et pour supprimer le dernier caractère, il faut connaître la longueur de la chaîne - 1. Fort heureusement, PowerShell dispose de la propriété Length qui permet d'obtenir la longueur d'une chaîne.

On va donc faire un Substring sur notre chaîne, en partant du caractère 0 jusqu'à "Length - 1" ce qui aura pour bénéfice de supprimer le dernier caractère. Au niveau de la syntaxe, ceci nous donne :

$UserLogin = $UserLogin.Substring(0,$UserLogin.Length-1)

En fait, je me suis servi de cette méthode récemment pour supprimer le dernier caractère d'une chaîne s'il s'agissait d'un point. Il fallait donc récupérer ce dernier caractère dans une variable ($UserLoginLastCharIsADot), puis s'il s'agissait d'un "." alors on le supprime. Ce qui donne :

$UserLogin = "Florian."

$UserLoginLastCharIsADot = $UserLogin.Substring($UserLogin.Length-1,1)

if($UserLoginLastCharIsADot -eq "."){
   $UserLogin = $UserLogin.Substring(0,$UserLogin.Length-1)
}

Le résultat en image :

Amusez-vous bien...!

Partagez cet article Partager sur Twitter Partager sur Facebook Partager sur Linkedin Partager sur Google+ Envoyer par mail

Florian B.

Co-Fondateur d'IT-Connect, je souhaite partager mes connaissances et expériences avec vous, et comme la veille techno' est importante je partage aussi des actus.

florian has 1814 posts and counting.See all posts by florian

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

 

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.