如何拆分具有多个分隔符powershell的字符串?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何拆分具有多个分隔符powershell的字符串?相关的知识,希望对你有一定的参考价值。

我一直试图解决我的问题,

我有一个名称存储为字符串,看起来像这样。

FirstName LastName d111

我想将FirstName LastName存储为变量

我尝试使用代码$Name.Split("d11")[0]工作了一段时间,直到我意识到如果名称包含“d”它也像分隔符一样。

谁能帮我解决这个问题?

感谢你们

答案

假设你总是有一个空格和那个顺序的字段,你应该使用空格作为分隔符:

$Name.Split(" ")[-4..-2] -join " "

这种更新的方法将从预期的最后一项(-4)变为发送到最后一项(-2)。

-4将适用于你的例子,或类似的东西:

FirstName Middle Name LastName d111

如果您希望能够处理更多字段,只需调整数字即可。例如-10将处理最多9个名称,并省略最后一个字段(d111)

另一答案

谢谢您的帮助!

最后,我选择了比你提到的更难的解决方案,我可能稍后编辑我的代码。

我使用的代码,如果有人需要它

        $user1 = $user.name.Split(" ")[0] #firstName
        $user1 = $user1 + " "
        $user2 = $user.name.Split(" ")[1] #secondName
        $user3 = $user.Name.Split(" ")[2] #thirdName

        if ($user3 -like "d111*")  
        { $user3 = $null
          $user = $user1 + $user2} 
        else 
        { $user2 = $user2 + " "
          $user = $user1 + $user2 + $user3}

$user1 =  $null
$user2 = $null
$user3 = $null

以上是关于如何拆分具有多个分隔符powershell的字符串?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 LookML 中拆分具有多个分隔符的字符串?

在 PowerShell 中将字符串拆分为多列

将字符串拆分为具有多个分隔符的多个字符串而不删除?

拆分具有多个分隔符的字符串并将其保存到向量中

如何拆分()关于多个分隔符的字符串? [复制]

在Python中拆分具有未知数量空格的字符串作为分隔符