Splitting a String into Separate Variables
I Have a String, Which I Have Split Using the Code $Createdt. Split(" "). I Now Want to Manipulate Two Separate Strings in Different Ways. How Can I Separate...
I have a string, which I have split using the code $CreateDT.Split(" "). I now want to manipulate two separate strings in different ways. How can I separate these into two variables?
6 Answers
Like this?
$string = 'FirstPart SecondPart'
$a,$b = $string.split(' ')
$a
$b
An array is created with the -split operator. Like so,
$myString="Four score and seven years ago"
$arr = $myString -split ' '
$arr # Print output
Four
score
and
seven
years
ago
When you need a certain item, use array index to reach it. Mind that index starts from zero. Like so,
$arr[2] # 3rd element
and
$arr[4] # 5th element
years
It is important to note the following difference between the two techniques:
$Str="This is the<BR />source string<BR />ALL RIGHT"
$Str.Split("<BR />")
This
is
the
(multiple blank lines)
source
string
(multiple blank lines)
ALL
IGHT
$Str -Split("<BR />")
This is the
source string
ALL RIGHT
From this you can see that the string.split() method:
- performs a case sensitive split (note that "ALL RIGHT" his split on the "R" but "broken" is not split on the "r")
- treats the string as a list of possible characters to split on
While the -split operator:
- performs a case-insensitive comparison
- only splits on the whole string
Try this:
$Object = 'FirstPart SecondPart' | ConvertFrom-String -PropertyNames Val1, Val2
$Object.Val1
$Object.Val2
Foreach-object operation statement:
$a,$b = 'hi.there' | foreach split .
$a,$b
hi
there
Incase, we want to split a string into separate characters, then we can use .ToCharArray()
$Inputstring ="Hello World"
$Array =$InputString.ToCharArray()
$Array
Output:
H
e
l
l
o
W
o
r
l
d
You can take a look here: