如何插入软连字符

时间:2012-02-06 19:02:31

标签: c# powershell powershell-v2.0

我想使用powershell在单词中的每个字母之间插入一个软连字符。例如,这里有一些文字:

Thisisatest => T-h-i-s-i-s-a-t-e-s-t

-是一个软连字符。我怎么能在powershell中做到这一点?

4 个答案:

答案 0 :(得分:6)

使用.NET方法比规范的PowerShell代码更多,您可以编写

$word = "Thisisatest"
[System.String]::Join("-", $word.ToCharArray())

和Powershell输出“T-h-i-s-i-s-a-t-e-s-t”

编辑:对于一个真正的软连字符,并使用this answer on Unicode in PowerShell,我会将第二行更改为

[System.String]::Join([char] 0x00AD, $word.ToCharArray())

答案 1 :(得分:6)

您可以使用PowerShell友好的-join运算符来执行此操作:

"Thisisatest".ToCharArray() -join '-'

有关-join PowerShell运算符的详细信息,请查看PowerShell Technet帮助。

http://technet.microsoft.com/en-us/library/dd315375.aspx

答案 2 :(得分:2)

有一篇关于在PowerShell here中拆分和连接字符串的文章。

您可能还会发现string.ToCharacterArray方法非常有用,如上所述here

答案 3 :(得分:0)

关于拆分和加入主题的我的PowerShell教授专栏: http://mcpmag.com/articles/2011/10/18/split-and-join-operators.aspx

就个人而言,我认为除非没有“本机”PowerShell cmdlet或运算符,否则我应该避免使用.NET类和方法。