Exécution desPowershell .TrimEnd ne pas retourner résultat correct
$x = "CF21_flddep-op-config"
$x.TrimEnd("-op-config")
Résultats suivants:
CF21_fldde
Quand il devrait afficher:
CF21_flddep
Toutes les idées pourquoi?
Exécution desPowershell .TrimEnd ne pas retourner résultat correct
$x = "CF21_flddep-op-config"
$x.TrimEnd("-op-config")
Résultats suivants:
CF21_fldde
Quand il devrait afficher:
CF21_flddep
Toutes les idées pourquoi?
.TrimEnd()
ne supprime pas chaîne arrière, il supprime un ensemble de caractères arrière . p
est dans cet ensemble, donc le dernier p
est également supprimé. (Vous obtiendrez le même résultat avec .TrimEnd("-cfginop")
, ou plus explicitement .TrimEnd('-', 'c', 'f', 'g', 'i', 'n', 'o', 'p')
.) Vous voulez quelque chose comme $x -replace "-op-config", ""
ou, si la chaîne doit seulement être retirée quand elle se produit à la fin, -replace "-op-config$", ""
.
Merci! Remplacer est la meilleure option – Kalim
Lors du remplacement avec rien, vous pouvez omettre la partie '," "'. Et comme il n'y a rien à développer j'utiliserais '-replace '-op-config $'' – LotPings