Powershell循环,数字到字母

时间:2017-09-08 05:37:25

标签: powershell increment alphabet

我需要以下方面的帮助: 根据索引初始化为0,$ test小于26,索引递增1的条件创建for循环 对于每次迭代,打印字母表的当前字母。从字母A开始。因此,对于每次迭代,在单独的行上打印单个字母。 每次循环运行时我都无法递增char

for ($test = 0; $test -lt 26; $test++)
{
[char]65
}

我尝试多次尝试将char 65到90递增但没有成功。 是否有更简单的方法来增加字母表以显示每个循环的字母?

3 个答案:

答案 0 :(得分:5)

您可以将循环索引与65相加。因此,它将是:0 + 65 = A,1 + 65 = B ...

for ($test = 0; $test -lt 26; $test++)
{
    [char](65 + $test)
}

答案 1 :(得分:1)

PS2至PS5:

97..(97+25) | % { [char]$_ }

更快

(97..(97+25)).ForEach({ [char]$_ })

PS6 +:

'a'..'z' | % { $_ }

更快

('a'..'z').ForEach({ $_ })

答案 2 :(得分:0)

以下示例不假定“A”为 65,并且还允许您将其更改为您想要的任何起始驱动器。例如,以“C”开头并转到“Z”:

$start = 'C'
for ($next = 0; $next -lt (26 + [byte][char]'A' - [byte][char]$start); $next++) {
    [char]([byte][char]$start + $next)
}