PowerShell拆分和合并运算符

PowerShell拆分和合并运算符

在PowerShell中使用拆分(-Split)和合并(-Join)运算符来划分和组合子字符串。

1.合并运算符

在PowerShell中,-Join运算符用于将字符串集组合为单个字符串。字符串按照它们在命令中出现的顺序组合。

以下两个语句是使用Join运算符的语法:

-Join <String>  
<String> -Join <Delimiter>

在以上语法中,<String>参数用于指定要连接的一个或多个字符串。 <Delimiter>参数用于指定放置在组合字符串之间的一个或多个字符。 默认的分隔符为空格:" "

注意:如果我们使用一元联接运算符(-join <String>)组合字符串,则必须将其括在圆括号中或将其存储在变量中。

下面的示例描述如何以不同方式使用一元和二进制(带分隔符)Join运算符:

示例1:

-Join "windows","Operating","System"

本示例中的命令显示以下输出:

Windows 
Operating 
System

示例2:

-Join ("windows","Operating","System")

本示例中的命令显示以下输出:

WindowsOperatingSystem

示例3:

$a = "windows","Operating","System"  
-Join $a

本示例中的第二条命令显示以下输出:

WindowsOperatingSystem

示例4:

$x = "WIND", "S P", "ERSHELL"  
$x -join "OW"

本示例使用多字符定界符来连接三个字符串,这三个字符串存储在变量$x中。 本示例中的第二条命令显示以下输出:

WINDOWS POWERSHELL

2.拆分运算符

在PowerShell中,-Split运算符用于将一个或多个字符串划分为子字符串。

以下语句是使用-split运算符的语法:

-Split <String>  
-Split (<String[]>)  
<String> -Split <Delimiter>[,<Max-substrings>[,"<Options>"]]  
<String> -Split {<ScriptBlock>} [,<Max-substrings>]

在以上语法中,使用了以下参数:

  • <string>:此参数用于指定一个或多个要分割的字符串。 相同的定界符规则将多个字符串分割。
  • <Delimiter>:默认定界符为""。 拆分字符串时,所有子字符串都将其省略。
  • <max-substrings>:此参数用于指定字符串拆分的最大次数。
  • <ScriptBlock>:此参数是一个表达式,用于指定应用定界符的规则。必须将脚本块放在大括号{}中。
  • <Options>:仅当在语句中使用<max-substring>参数时,此参数才有效。

以下示例描述如何以不同方式使用-split运算符:

示例1:

-split "a b c d e f g h"

此命令显示以下输出:

a
b
c
d
e
f
g
h

示例2:

$a = "a b c d e f g h"   
-split $a

此命令显示以下输出:

a
b
c
d
e
f
g
h

示例3:

$a = "a=b=c=d=e=f=g=h"   
$a -split "="

此命令显示以下输出:

a
b
c
d
e
f
g
h

示例4:

$a = "a=b=c=d=e=f=g=h"   
$a -split "=",3

此命令显示以下输出:

a
b
c=d=e=f=g=h

示例5:

$a = "a=b=c=d=e=f=g=h"   
$a -split { $_ -eq "b" -or $_ -eq "f"}

此命令显示以下输出:

a=
=c=d=e=
=g=h

目录