Sorry for the newb question but I am really stuck here. I am trying to use
$SERIAL = (Get-WmiObject win32_bios).serialnumber
Which returns to me something like “MXL1160602”
All I need is the “60602”
I have tried all sorts of trims and replaces and I can not get it to give me the output I want.
I am not getting any errors, when I run the command with a trim or replace it goes through but it still gives me the whole result. The only thing I have found to work so far is $serial -replace “MXL”, “”
I’d do this: “MXL1160602” -replace ‘.*?(?=.{1,6}$)’
But then again, I’m one of those weird people who likes to use regex.
(The advantage, though, is that this works regardless of the length of the string. Using String.SubString() will throw an exception if the string is fewer than 6 characters, unless you add a bit of extra code to check for that condition.)
My question is does the serial number data being returned need to be cleaned first?
I gathered serial numbers yesterday and they all had extra characters at the end (5 spaces).
Are you collecting serial numbers from one or many pcs?