Kommentare: PowerShell String manipulieren: substring etc.
Fragen / Kommentare zu PowerShell String manipulieren: substring etc.
(neueste zuerst)replace und substring funktionieren bei mir aus irgendeinem grund nicht. Sie werden auch nicht bei den Vorschlägen für den "nächsten" Befehl vorgeschlagen
User: Philipp Neben TrimStart war für mich auch TrimEnd ganz nützlich, funktioniert ähnlich zu TrimStart ;)
User: Philipp $("TEST").Substring("","3") ergibt TES und nicht EST Hier Zitat von oben ;) Sollte nur die Endposition verwendet werden, sieht das so aus: PowerShell $("TEST").Substring("","3") Ausgabe: EST
danke, habe ich korrigiert
Beitrag erstellt von Bernhard
User: Daniel Hallo Wie würde denn so etwas unter einer PS-String-Manipulation funktionieren: Ich lese eine Parameterliste aus einem Konfig-File ein und schneide das Keyword weg: foreach ($p in get-content DC_progs.cfg){ if($p.contains("CMOD_DIRS=") = "true"){ write-host $p $cmod_dirs = $p.replace("CMOD_DIRS=", "") write-host $cmod_dirs } } Resultat: CMOD_DIRS=ond_doks\scanning;ond_kasse_zgkb;ond_doks\holdmail;ond_doks\privor; ond_doks\scanning;ond_kasse_zgkb;ond_doks\holdmail;ond_doks\privor; nun müsste ich diese Liste in ein array ablegen: unter RapidQ gibt es so eine schöne INSTR-Funktion: if(INSTR($p, ";") > 0) then ai = INSTR($p, ";") ' -> ai = 18 b_dir$ = MID$($p, 1, ai - 1) ' -> split pos 1- pos 17 = ond_doks\scanning usw für die anderen Elemente der Liste Gibst es so etwas auch unter PS?
Die Antwort kommt vielleicht etwas spät, aber mag anderen noch helfen: Die Methode gibt es in PowerShell und nennt sich "split". Das kannst du einfach hinter die andere Methode "replace" hängen. Würde dann bei deinem Beispiel in etwa so aussehen: $dccfg = Get-Content DC_progs.cfg foreach ($p in $dccfg){ if($p.contains("CMOD_DIRS=")){ $p $cmod_dirs = $p.replace("CMOD_DIRS=","").split(";") $cmod_dirs } } Resultat: CMOD_DIRS=ond_doks\scanning;ond_kasse_zgkb;ond_doks\holdmail;ond_doks\privor; ond_doks\scanning ond_kasse_zgkb ond_doks\holdmail ond_doks\privor Wenn man "Write-Host" in der Ausgabe weglässt, wird es auch etwas besser sichtbar, dass man nun eine Liste zurück bekommt. LG Chris
Beitrag erstellt von anonym