Arrays 如何使用多个分隔符powershell拆分字符串?
我想解决我的问题已经有一段时间了 我得到了一个存储为字符串的名称,如下所示Arrays 如何使用多个分隔符powershell拆分字符串?,arrays,string,powershell,split,Arrays,String,Powershell,Split,我想解决我的问题已经有一段时间了 我得到了一个存储为字符串的名称,如下所示 FirstName LastName d111 我想将FirstName LastName存储为变量 我试着使用代码$Name.Split(“d11”)[0],这一功能已经运行了一段时间,直到我意识到如果名称包含“d”,那么它的作用也像一个分隔符 有人能帮我解决这个问题吗 谢谢大家假设您总是有一个空格和按此顺序排列的字段,您应该使用空格作为分隔符: $Name.Split(" ")[-4..-2] -join " "
FirstName LastName d111
我想将FirstName LastName存储为变量
我试着使用代码$Name.Split(“d11”)[0]
,这一功能已经运行了一段时间,直到我意识到如果名称包含“d”,那么它的作用也像一个分隔符
有人能帮我解决这个问题吗
谢谢大家假设您总是有一个空格和按此顺序排列的字段,您应该使用空格作为分隔符:
$Name.Split(" ")[-4..-2] -join " "
此更新的方法将从预期的最后一项(-4)转到发送到最后一项(-2)
-4将适用于您,例如,或类似的内容:
FirstName Middle Name LastName d111
如果您想处理更多字段,只需调整数字即可。e、 g.-10将处理多达9个名称,并省略最后一个字段(d111)假设您始终有一个空格,并且字段按该顺序排列,则应使用空格作为分隔符:
$Name.Split(" ")[-4..-2] -join " "
此更新的方法将从预期的最后一项(-4)转到发送到最后一项(-2)
-4将适用于您,例如,或类似的内容:
FirstName Middle Name LastName d111
如果您想处理更多字段,只需调整数字即可。e、 g-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
谢谢你的帮助 最后,我选择了一个比您提到的更难的解决方案,我可能会在以后编辑代码 如果有人需要我用的代码
$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
你能分享一个你的条件不起作用的示例吗?你能分享一个你的条件不起作用的示例吗?这是个好主意,但有些用户有3个名字,如果没有其他帮助,我可以在if语句中使用它,但我希望有更好的解决方案。这是个好主意,但有些用户有3个名字,如果没有其他帮助,我可以在if语句中使用它,但我希望有更好的解决方案