Question [Résolu]probleme avec la fonction TrimEnd

Plus d'informations
il y a 14 ans 3 mois #5793 par Guardiola gabriel
bonsoir

je commence a jouer avec la fonciton TrimEnd et je n'arrive pas vraiment a comprendre:
lorsque je fais cela
[code:1]
PS C:\> $a = \"tonic.8@toto.com\"
PS C:\> $b = $a.trim().Trimend(\"@toto.com\"«»)
PS C:\> $b
tonic.8
[/code:1]

j'obtiens bien tonic.8, mais si je fais cela
[code:1]
PS C:\> $a = \"gabriel.guardiola@bnpparibas.com\"
PS C:\> $b = $a.trim().Trimend(\"@bnpparibas.com\"«»)
PS C:\> $b
gabriel.guardiol
[/code:1]

il me manque le \"a\"... final j'ai essayer avec tata et bien ca marche...
Une petite idée?
merci d'avance<br><br>Message édité par: tonic8, à: 18/12/09 11:59

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

Plus d'informations
il y a 14 ans 3 mois #5794 par Arnaud Petitjean
Bonsoir Tonic,

Alors là j'ai l'impression qu'un bug se cache là dessous ou alors j'ai rien compris à l'utilisation de la méthode TrimEnd. (Voir ici la fiche MSDN)

Je vais soumettre le bug à Microsoft, mais en attendant je te propose la solution de contournement suivante :

[code:1]
PS &gt; $a = 'Cette adresse e-mail est protégée contre les robots spammeurs. Vous devez activer le JavaScript pour la visualiser.'
PS &gt; $a.split('@')[0]

arnaud.petitjean
[/code:1]

L'idée est de couper la chaine en deux en choisissant l'arrobase comme caractère de séparation. Le résultat retourné est alors un tableau de chaines, et l'on prend le premier élément du tableau (situé à l'indice 0). Et tu l'auras deviné, à l'indice 1 se trouve l'autre partie de la chaine.

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 ?

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

Plus d'informations
il y a 14 ans 3 mois #5795 par Arnaud Petitjean
Voilà, le bug est soumis. Vous pouvez aller voter ici : connect.microsoft.com/PowerShell/feedbac...px?FeedbackID=521021

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 ?

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

Plus d'informations
il y a 14 ans 3 mois #5800 par Guardiola gabriel
Alors merci Arnaud, j'avais chercher du coté du split mais je n'avais pas trouvé le coup de l'index
[code:1]$a.split('@')[0][/code:1]

je mettais le resultat du split dans une variable et je tentais l'index dessus
[code:1]$b = $a.split('@')
$b.[0][/code:1]
et ca marche pas... parceque j'ai mis un point entre la variable et l'index...

donc je me tourne vers le trimEnd... qui al'air de fonctionner et mauvaise surprise...
Je me sert immediatement de ta proposition. Et je regarderais l'evolution pour le bug. Merci
je vais voter de ce pas...

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

Plus d'informations
il y a 14 ans 3 mois #5801 par Guardiola gabriel
bon j'ai essayé de voté, mais faut s'enregistrer avec un truc visualStudio? pas bien compris.

De plus j'ai regarder les commentaires et je suis tout a fait d'accord avec toi, pourquoi il retire 1 seul caractere quand c'est en minuscule, et rien quand c'est en majuscule. Pas logique...

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

Plus d'informations
il y a 14 ans 3 mois #5802 par Laurent Dardenne
tonic8 écrit:

bon j'ai essayé de voter, mais faut s'enregistrer avec un truc visualStudio? pas bien compris.

Il faut un compte MS Live Id, anciennement MS Passport.
tonic8 écrit:

Pas logique...

Paradoxalement il y a une logique dans un bug :P
Un bug n'est rien d'autre qu'un raisonnement erroné provenant du développeur ou des spécifications.
Mais certains résonnent plus que d'autres...

Tutoriels PowerShell

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

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