使用powershell获取字符串末尾的int

使用powershell获取字符串末尾的int,powershell,powershell-ise,Powershell,Powershell Ise,我是Powershell新手,想知道:如何使用power shell从上述示例中提取字符串末尾的整数 编辑: 这是3个独立的字符串 Tom1Jerry02,abcd0asdf001和qwerty1。我需要一个适合这种字符串的解决方案 Tom1Jerry02 --> 02, abcd0asdf001 --> 001, qwerty1 --> 1 输出: PS> $a = "Tom1Jerry02 --> 02", "abcd0asdf001 --> 001"

我是Powershell新手,想知道:如何使用power shell从上述示例中提取字符串末尾的整数

编辑:

这是3个独立的字符串
Tom1Jerry02
abcd0asdf001
qwerty1
。我需要一个适合这种字符串的解决方案

Tom1Jerry02 --> 02,
abcd0asdf001 --> 001,
qwerty1 --> 1
输出:

PS> $a =  "Tom1Jerry02 --> 02", "abcd0asdf001 --> 001", "qwerty1 --> 1"
PS> foreach ($s in $a) {
>> $b = $s -Match "(\d+)$"
>> write-output $matches[1]
>> }
>>

使用PowerShell,您可能会找到许多不同的方法来完成相同的任务。这里有一种方法可以作为一个班轮完成此操作:

02
001
1

如果我需要避免输出中的true,那么需要做什么?@TJK只需将匹配结果分配给一个变量。请参阅更新的解决方案。对于像我这样的noob,值得注意的是$matches是一个自动生成的数组
PS> 'Tom1Jerry02','abcd0asdf001','qwerty1' | Foreach {if ($_ -match '(\d+)$') {$matches[1]}}
02
001
1