Using regex function to have a powerful split/replace functionality in Powershell
Powershell provides easy replace and split method to manipulate text/string values. They are easy to use but…if you want to replace content only on subsequent positions or split a string using a pattern containing more than a single character, you’ll fail.
Let’s take two examples.
Replace the last IP digit
$a = 'The IP Adress with the number 100 is: 192.168.1.100' $a.replace('100','101')
if you just had to replace the IP digit but not the text before, you have a problem.
The same for split.
$a = 'This is a combined string :which we want to split from here: and the show begins:' $a.split('from here:')
The split method does only allow a single character as a split string.
To enhance this two methods take these two regex examples as a reference.
[Regex]::Replace('192.168.1.200', '\d{1,3}$','201') [Regex]::Split('http://server1/dir/subdir/','\bhttp://')
As you can see, the regex pattern function works also for split and replace methods within complex string content