Ich bin auf der Suche nach den ersten beiden Elemente in einem Array bis zum Ende zu verschieben.Verschieben von Elementen in einem Array
Zum Beispiel möchte ich einfach 160210
zu 021016
werden.
Ist dies in Powershell möglich?
Dank
Ich bin auf der Suche nach den ersten beiden Elemente in einem Array bis zum Ende zu verschieben.Verschieben von Elementen in einem Array
Zum Beispiel möchte ich einfach 160210
zu 021016
werden.
Ist dies in Powershell möglich?
Dank
aus einem Array von Objekten starten, die Array-Slice-Notation $array[a..b]
kann dies für Sie tun. Verketten Sie einfach zwei Scheiben des Arrays - eine von Element 2 bis zum Ende und eine, die nur die ersten beiden Elemente enthält.
$array = 1,6,0,2,1,0
$newarray = $array[2..$array.length] + $array[0,1]
Wenn Sie aus einer Zeichenfolge beginnen, ist eine weitere Option Regex zu verwenden und die Powershell -replace
Operator.
$string = "160210"
$newstring = $string -replace '(..)(.*)','$2$1'
Oder einfach die .NET String Substring()
Methode verwenden.
$newstring = $string.Substring(2) + $string.Substring(0, 2)
Sie können den Inhalt des Arrays 3 Variablen zuweisen und sie mischen um etwa so:
$array = 1,6,0,2,1,0
$first,$second,$rest = $array
$array = $rest + $first + $second
[Konvertieren das Array in eine Liste] (http://stackoverflow.com/a/ 618675/3195526), entfernen Sie die Elemente, fügen Sie sie zum Ende hinzu, konvertieren Sie sie zurück in ein Array. –
Ist '160210' ein String oder ist es ein Array' 1,6,0,2,1,0'? –
Es ist eigentlich eine Zeichenfolge, aber ich würde zuerst in Array konvertieren, so dass ich die einzelnen Zeichen steuern kann – Quanda