博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
在C#中使用忽略大小写的string.Contains方法
阅读量:6350 次
发布时间:2019-06-22

本文共 1416 字,大约阅读时间需要 4 分钟。

在C#中比较源字符串是否包含目标字符串,我们可以使用以下方法:

source.Contains(target)     source.IndexOf(target) >= 0;

相对而言 Contains 方法更符合直觉,因为它直接返回了一个布尔值,但当我们的对于需要忽略大小写时只能使用 IndexOf 支持 StringComparison 参数的重载方法,但是这个方法可能不够符合语义(返回值可能是-1,0,或者大于0),虽然这种情况下很多人或许会将源字符串和目标字符串都转换为大写或小写再对比,但这样未免太低效了,我们可以直接定义一个支持StringComparison参数的扩展方法:

public static bool Contains(this string source, string value, StringComparison comparisonType)    {        return (source.IndexOf(value, comparisonType) >= 0);    }

其实.NET 类库中的 Contains 方法的也是基于  方法的:

// #mscorlib/system/string.cs    [Pure]    public bool Contains( string value ) {        return ( IndexOf(value, StringComparison.Ordinal) >=0 );    }

参考

分类: 
标签: 

在C#中比较源字符串是否包含目标字符串,我们可以使用以下方法:

source.Contains(target)     source.IndexOf(target) >= 0;

相对而言 Contains 方法更符合直觉,因为它直接返回了一个布尔值,但当我们的对于需要忽略大小写时只能使用 IndexOf 支持 StringComparison 参数的重载方法,但是这个方法可能不够符合语义(返回值可能是-1,0,或者大于0),虽然这种情况下很多人或许会将源字符串和目标字符串都转换为大写或小写再对比,但这样未免太低效了,我们可以直接定义一个支持StringComparison参数的扩展方法:

public static bool Contains(this string source, string value, StringComparison comparisonType)    {        return (source.IndexOf(value, comparisonType) >= 0);    }

其实.NET 类库中的 Contains 方法的也是基于  方法的:

// #mscorlib/system/string.cs    [Pure]    public bool Contains( string value ) {        return ( IndexOf(value, StringComparison.Ordinal) >=0 );    }

参考

分类: 
本文转自gyzhao博客园博客,原文链接:http://www.cnblogs.com/IPrograming/p/string-contains-extension.html
,如需转载请自行联系原作者
你可能感兴趣的文章
paramiko安装及使用
查看>>
Java私塾:研磨设计模式 之 访问者模式(Visitor)
查看>>
我的友情链接
查看>>
《Python网络数据采集》读书笔记(六)
查看>>
Linux必学的60个命令
查看>>
iptables 学习笔记 (上)
查看>>
Windows Server 2012 R2 Active Directory(活动目录)实验一
查看>>
android viewpager 无限左右滑动
查看>>
linux下SSH远程连接服务慢解决方案
查看>>
利用mic visual studio 2010 编译器执行wincap获取网络适配器的代码
查看>>
HTML
查看>>
CENTOS7下编译安装PHP-5.4以及配置phpMyAdmin
查看>>
磁盘显示无法访问拒绝访问,里面的资料怎样找到
查看>>
Java之品优购课程讲义_day07(5)
查看>>
Java的新项目学成在线笔记-day3(八)
查看>>
路由简单的实验
查看>>
Centos6.4 xen编译部署
查看>>
好程序员web前端教程分享js reduce方法使用教程
查看>>
零基础学习大数据Hadoop需要什么准备?Hadoop如何发展起来的?
查看>>
前端程序员需要具备的几个软实力,你具备了吗
查看>>