当前位置: 首页 > 知识库问答 >
问题:

强力外壳区分大小写的字母字符顺序?

孙弘博
2023-03-14

我已经用其他语言编写了相当多的程序,但是我对PowerShell还相当陌生。我知道比较运算符的大小写敏感版本,但我对一些结果感到紧张..

我假设PowerShell在进行字符串比较时使用了ASCII(Unicode)值,所以我预计

"abc" -clt "ABC"

结果是错误的——但事实并非如此

这就有了一些直观的感觉(lower一定要小于upper-right?)但是从ASCII的角度来看没有意义。对于罗马字母字符来说,这种情况已经颠倒了吗——还是有更多的惊喜在等着我?

前任

"#$%" -clt ")*+"

按预期工作(即True)。

编辑-我最初的问题包括一个双重否定,可能会让人们感到困惑。这里有更多的例子来帮助澄清:

PS> 'A' -clt 'a'
False

PS> 'a' -clt 'A'
True

P> 'A' -cgt 'a'
True

P> 'a' -cgt 'A'
False

共有1个答案

王磊
2023-03-14

我假设PowerShell在进行字符串比较时使用了ASCII(Unicode)值

它没有:)

PowerShell中用于比较运算符的特定于字符串的重载都按字母顺序操作,这也意味着将大写字母优先于小写字母。

另一种思考方式是:如果你是一名图书管理员,必须为两位作者分别以约翰·多伊约翰多伊的风格为同一主题的书籍编制索引,你可能会将John Doe的书籍放在第一位:)

 类似资料:
  • 问题内容: 我有一个包含人名的字符串arraylist 。我想按字母顺序对arraylist进行排序。 我试图以上述方式对列表进行排序。但是它将排序后的数组显示为: 但我不想使其区分大小写。我想要的结果是: 问题答案: 自定义应该有帮助 或者,如果你使用的是Java 8:

  • 需要制作一个密码程序,用户在开始时设置密码,在程序停止前可以输入密码3次。该程序不能区分大小写。 程序按预期打印,但不区分大小写

  • 我使用的是mySQL和排序规则。 我尝试了以下查询: 结果是: 是否在上面的排序规则中设置了这种排序类型(小写字母按降序排列)? 另外,如果我运行以下查询: 结果是: 再次以升序排列,小字母排在第一位。我不明白。请给我解释一下。 如何更改数据库排序规则?

  • 我正在尝试使用正则表达式将大写字母替换为相应的小写字母。因此 变成 在Sublime的文本中。如何在同时包含小写和大写字母的单词中使用小写字母?所以它会影响维纳斯,而不是维纳斯。

  • 问题内容: 这个问题已经在这里有了答案 : 如何使用SQL Order By语句对不区分大小写的结果进行排序? (3个答案) 4年前关闭。 我要做的就是按字母顺序抓取东西,而忽略大写字母。 这是我在上面使用的代码,但是它总是给我一个SQLite异常,表明COLLATE是语法错误。 android.database.sqlite.SQLiteException:在“ COLLATE”附近:语法错误: