POWERSHELL String - Zeichen einzeln prüfen und mitzählen
Moinsen,
ich möchte mich näher mit Powershell und dessen Möglichkeiten beschäftigen. Dazu habe ich mir das Buch Windows PowerShell von Dr. Tobias Weltner gekauft. Jetzt bin ich bei Sort-Object gelandet und spiele ein bisschen rum. Komme aber leider nicht mehr weiter , habe die Foren durchsucht aber niemand (was ich auch verstehe) hat mein "Problem".
Ich habe mir ein leere Array erzeugt, dieses wird dann über eine Schleife und Get-Random gefüllt und danach sortiert. Jetzt werden diese Zahlen per foreach in einen String umgewandelt und aneinander gehangen.
Als nächste "Spielerei" möchte ich diesen String gern durchsuchen und z.B. rausfinden wie oft die 0 in dieser 23400 Zeichen langen kette vorhanden ist.
Leider finde ich dazu keine Infos. Ich stelle mir vor das es eine Möglichkeit gibt Zeichen für Zeichen zu prüfen, ich weis aber nicht wie ich das anstellen soll. Ich brauche auch keine Komplettlösung. Ein Denkanreiz würde mir reichen bzw. wäre mir sogar lieber. Learning by doing.
Hier mal der Code.
Wie immer schon einmal vielen Dank für eure Hilfe.
ich möchte mich näher mit Powershell und dessen Möglichkeiten beschäftigen. Dazu habe ich mir das Buch Windows PowerShell von Dr. Tobias Weltner gekauft. Jetzt bin ich bei Sort-Object gelandet und spiele ein bisschen rum. Komme aber leider nicht mehr weiter , habe die Foren durchsucht aber niemand (was ich auch verstehe) hat mein "Problem".
Ich habe mir ein leere Array erzeugt, dieses wird dann über eine Schleife und Get-Random gefüllt und danach sortiert. Jetzt werden diese Zahlen per foreach in einen String umgewandelt und aneinander gehangen.
Als nächste "Spielerei" möchte ich diesen String gern durchsuchen und z.B. rausfinden wie oft die 0 in dieser 23400 Zeichen langen kette vorhanden ist.
Leider finde ich dazu keine Infos. Ich stelle mir vor das es eine Möglichkeit gibt Zeichen für Zeichen zu prüfen, ich weis aber nicht wie ich das anstellen soll. Ich brauche auch keine Komplettlösung. Ein Denkanreiz würde mir reichen bzw. wäre mir sogar lieber. Learning by doing.
Hier mal der Code.
Wie immer schon einmal vielen Dank für eure Hilfe.
#leeres Array
$number = @()
#array mit 100 zufälligen 18stelligen Zahlen füllen
for($i=0; $i -clt 100; $i++){
$number = $number + (Get-Random -Minimum 100000000000000000 -Maximum 999999999999999999)
}
#Zahlen sortieren
$number | Sort-Object
write-host "`n"
#die Zahlen per String aneinander reihen
$Nstring
foreach ($element in $number){
$Nstring = $Nstring + $element.ToString()
}
write-host "`n"
#Wie viele Zeichen?
$Nstring | Measure-Object -Character
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 666834
Url: https://administrator.de/contentid/666834
Ausgedruckt am: 19.11.2024 um 07:11 Uhr
2 Kommentare
Neuester Kommentar
Als nächste "Spielerei" möchte ich diesen String gern durchsuchen und z.B. rausfinden wie oft die 0 in dieser 23400 Zeichen langen kette vorhanden ist.
($Nstring.ToCharArray() | ?{$_ -eq '0'}).Count
($number | ?{$_ -eq 0}).Count
Btw.
#die Zahlen per String aneinander reihen
Das geht viel einfacher und vor allem schneller mit -join$nstring = $number -join ''
Gruß w.
Zitat von @148121:
Kannst du aber schon vorher mit dem Array machen
Als nächste "Spielerei" möchte ich diesen String gern durchsuchen und z.B. rausfinden wie oft die 0 in dieser 23400 Zeichen langen kette vorhanden ist.
> ($Nstring.ToCharArray() | ?{$_ -eq '0'}).Count
>
> ($number | ?{$_ -eq 0}).Count
>
Weiter vereinfacht:
($Nstring.ToCharArray() -eq "0").Count