Question manipulation chaine de caractère

Plus d'informations
il y a 1 mois 1 semaine - il y a 1 mois 1 semaine #30239 par Florent
Bonjour,

Je début dans PowerShell et je souhaite récupérer des caractères dans le nom de la machine puis aller faire une recherche dans un fichier

J'ai réussi à faire la partie recherche dans un fichier mais je suis bloqué pour récupérer un code dans le nom de machine

Exemple de nom de machine:

PC2563-01
Je souhaite récupérer 2563
$nommachine= [system.environment]::MachineName

$code= ???

Merci pour votre aide
Dernière édition: il y a 1 mois 1 semaine par Arnaud Petitjean.

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 1 mois 1 semaine #30240 par Arnaud Petitjean
Bonjour Florent,

Sois le bienvenu dans le forum :). Une petite présentation serait sympa ;-).

Il y a mille et unes façon de traiter les chaines de caractères.

Rapidement je te propose la solution suivante à base d'une petite expression régulière:
'PC2563-01' -match 'PC(\d{4})'
$Matches[1]  # Contient 2563

L'expression régulière ici signifie: tu captures (la capture est indiquée par les parenthèses) la sous-chaine de 4 caractères numériques après la chaine PC.
Si le résultat du -Match est vrai, cela peuple la variable automatique $Matches et le résultat de la capture se trouvera dans $Matches[1]

Arnaud

MVP PowerShell et créateur de ce magnifique forum :-)
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ou d'un conseil ?

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 1 mois 1 semaine - il y a 1 mois 1 semaine #30242 par Florent
Réponse de Florent sur le sujet manipulation chaine de caractère
Hello,

Merci pour votre aide et la rapidité de votre réponse, finalement je dois le faire en batch
Dernière édition: il y a 1 mois 1 semaine par Florent.

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 1 mois 1 semaine #30243 par Arnaud Petitjean
Ah dommage !

Deux choses cependant :
  • PowerShell fonctionne aussi sous Linux (à partir de la version 6, mais je te conseille de partir sur la dernière version, la 7.1)
  • Tu pourras te resservir de l'expression régulière que je t'ai donné car Bash sait parfaitement les gérer

Arnaud

MVP PowerShell et créateur de ce magnifique forum :-)
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ou d'un conseil ?

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.191 secondes
Propulsé par Kunena