• C# 3.0 Cookbook:一、字符与字符串处理(4):在比较两个字符串时控制大小写敏感性


    问题

       需要判断两个字符串是否相等,此外,还要在比较时控制其大小写敏感性

    解决方法

        使用String类中的Compare静态方法比较两个字符串,是否采用大小写敏感进行比较取决于Compare重载方法的第三个参数。示例如下:

    string lowerCase = "abc";
    string upperCase = "AbC";
    int caseInsensitiveResult = string.Compare(lowerCase, upperCase,
    	StringComparison.CurrentCultureIgnoreCase);
    int caseSensitiveResult = string.Compare(lowerCase,
    	StringComparison.CurrentCulture);

        变量caseSensitiveResult的值为-1(表示lowerCase“小于”upperCase)或0(表示lowerCase“等于”upperCase)。

    讨论

        使用静态方法string.Compare可以使用户自由选择比较字符串时是否考虑其大小写问题。该方法返回一个整形变量用以表示两个字符串之间的关系。0表示两个字符串完全相等,负数表示第一个字符串小于第二个字符串,正数表示第一个字符串大于第二个字符串。

        通过设定该方法的最后一个参数(comparisonType)为StringComparison.CurrentCultureIgnoreCase或StringComparison.CurrentCulture,可决定Compare方法在比较两个字符串时是否考虑其大小写问题,将这个参数设定为StringComparison.CurrentCulture可促使其进行大小写敏感的比较;设定参数为

    StringComparison.CurrentCultureIgnoreCase可促使其进行大小写不敏感的比较。在使用其不包含comparisonTyp参数的重载方法时,默认比较方式为大小写敏感。

    还可参见

        MSDN文档中的“String.Compare方法”

  • 相关阅读:
    【转】Asp.net页面的生命周期
    指定.net的httprequest http协议版本为1.0
    查看oracle中被锁的对象(表...)
    网友整理的Flex开源项目
    oracle中用profile限定用户资源
    (转)让你受益终身的10个Word实用技巧
    磁盘阵列卡
    Nmap扫描器的使用
    最简单的数据库连接,asp连接access数据库
    网络经典命令行
  • 原文地址:https://www.cnblogs.com/PocketZ/p/1714991.html
Copyright © 2020-2023  润新知