Powershell remove text after first instance of special character

93,233

Solution 1

$s = '8.2.4.151.65; HBAAPI(I) v1.3; 3-29-02'
$s.Substring(0, $s.IndexOf(';'))

Solution 2

Split on the ; and take the first string.

'8.2.4.151.65; HBAAPI(I) v1.3; 3-29-02'.split(';')[0] 

Solution 3

Using a regex with a lazy match:

'8.2.4.151.65; HBAAPI(I) v1.3; 3-29-02' -replace '(.+?);.+','$1'

8.2.4.151.65

The ? makes the match 'lazy', so it stop at the first ;

Share:
93,233
runcmd
Author by

runcmd

Updated on June 05, 2020

Comments

  • runcmd
    runcmd almost 4 years

    This is the value that I have to parse.

    8.2.4.151.65; HBAAPI(I) v1.3; 3-29-02
    

    I need to remove everything after and including the first instance of ;

    So I need my ending result to be 8.2.4.151.65