Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
String Powershell按字母顺序排列_String_Powershell - Fatal编程技术网

String Powershell按字母顺序排列

String Powershell按字母顺序排列,string,powershell,String,Powershell,我正在编写一个创建用户邮箱的脚本,问题是,根据用户的姓氏,我们有两个不同的数据库。第一个数据库是A-M,第二个是N-Z。根据用户姓氏的第一个字母,我如何确定它位于字母表的哪一侧以正确分配数据库?例如,我有 $DB = $LName[0] 它抓住了姓氏的第一个字母,但是从那里,我如何确定字符串是在M之上还是之下呢?因此,对于某些给定的字符串: [int][char]'EBGreen'.Substring(0,1).ToUpper() 将给出69,这是E的ASCII int。将其与77(M的AS

我正在编写一个创建用户邮箱的脚本,问题是,根据用户的姓氏,我们有两个不同的数据库。第一个数据库是A-M,第二个是N-Z。根据用户姓氏的第一个字母,我如何确定它位于字母表的哪一侧以正确分配数据库?例如,我有

$DB = $LName[0]

它抓住了姓氏的第一个字母,但是从那里,我如何确定字符串是在M之上还是之下呢?

因此,对于某些给定的字符串:

[int][char]'EBGreen'.Substring(0,1).ToUpper()

将给出69,这是E的ASCII int。将其与77(M的ASCII int)进行比较,以决定使用哪个DB。

因此,对于某些给定字符串:

[int][char]'EBGreen'.Substring(0,1).ToUpper()

将给出69,这是E的ASCII int。将其与77(M的ASCII int)进行比较,以决定使用哪个DB。

因此,对于某些给定字符串:

[int][char]'EBGreen'.Substring(0,1).ToUpper()

将给出69,这是E的ASCII int。将其与77(M的ASCII int)进行比较,以决定使用哪个DB。

因此,对于某些给定字符串:

[int][char]'EBGreen'.Substring(0,1).ToUpper()

将给出69,这是E的ASCII int。将其与77(M的ASCII int)进行比较,以决定使用哪一个DB。

类似的东西,也许

Switch -Wildcard ($user.lastname)
{
 '[A-M]*' { $Database = 'DB1' }
 '[N-Z]*' { $Database = 'DB2' }
}

也许是这样的

Switch -Wildcard ($user.lastname)
{
 '[A-M]*' { $Database = 'DB1' }
 '[N-Z]*' { $Database = 'DB2' }
}

也许是这样的

Switch -Wildcard ($user.lastname)
{
 '[A-M]*' { $Database = 'DB1' }
 '[N-Z]*' { $Database = 'DB2' }
}

也许是这样的

Switch -Wildcard ($user.lastname)
{
 '[A-M]*' { $Database = 'DB1' }
 '[N-Z]*' { $Database = 'DB2' }
}


强调
.ToUpper()
的重要性,以确保您处理的是一种情况,而不必担心大写和小写的不同代码。因此,如果您手动键入字符串,它会起作用,但如果我尝试使用变量,即[int][char]$test.Substring(0,1).ToUpper()会引发system.char错误@user3066571您提到的代码在v3.0上对我有效。你的绳子是什么?您还可以尝试
[int][char]($test.Substring(0,1).ToUpper())
,以确保它可能会尝试将单个字符转换为整个字符串?$test.GetType()有什么好处?突出显示
.ToUpper()的重要性
以确保您处理的是一种情况,而不必担心大写和小写的不同代码。因此,如果您手动键入字符串,它可以工作,但如果我尝试使用变量,即[int][char]$test.Substring(0,1).ToUpper()@user3066571,则会抛出system.char错误。您提到的代码在v3.0上对我有效。你的绳子是什么?您还可以尝试
[int][char]($test.Substring(0,1).ToUpper())
,以确保它可能会尝试将单个字符转换为整个字符串?$test.GetType()有什么好处?突出显示
.ToUpper()的重要性
以确保您处理的是一种情况,而不必担心大写和小写的不同代码。因此,如果您手动键入字符串,它可以工作,但如果我尝试使用变量,即[int][char]$test.Substring(0,1).ToUpper()@user3066571,则会抛出system.char错误。您提到的代码在v3.0上对我有效。你的绳子是什么?您还可以尝试
[int][char]($test.Substring(0,1).ToUpper())
,以确保它可能会尝试将单个字符转换为整个字符串?$test.GetType()有什么好处?突出显示
.ToUpper()的重要性
以确保您处理的是一种情况,而不必担心大写和小写的不同代码。因此,如果您手动键入字符串,它可以工作,但如果我尝试使用变量,即[int][char]$test.Substring(0,1).ToUpper()@user3066571,则会抛出system.char错误。您提到的代码在v3.0上对我有效。你的绳子是什么?您还可以尝试
[int][char]($test.Substring(0,1).ToUpper())
,以确保它可能会尝试将单个字符转换为整个字符串?您从$test.GetType()中得到了什么?为了安全起见,可能应该将.ToUpper()作为姓氏。我测试过,它不区分大小写,但您可以添加.ToUpper()如果它能帮助你在晚上睡得更好:)。可能应该.ToUpper()的姓氏只是为了安全。我测试过,它不区分大小写,但是如果它能帮助你在晚上睡得更好,你可以添加.ToUpper())。可能应该.ToUpper()的姓氏只是为了安全。我测试过,它不区分大小写,但是你可以添加.ToUpper()如果它能帮助你在晚上睡得更好:)。可能应该是.ToUpper()为了安全起见。我测试过,它不区分大小写,但是如果它能帮助你在晚上睡得更好,你可以添加.ToUpper():)。