首页 > 编程语言 >C# 让String.Contains忽略大小写

C# 让String.Contains忽略大小写

时间:2023-11-21 14:26:37浏览次数:36  
标签:String C# Contains IndexOf 大小写 string

比较时如何让String.Contains比较忽略大小写

在C#里,String.Contains是大小写敏感的,在比较是否包含某个关键字的时候需要先转成小写的再去比较,这样会效率低。

解决办法

通过String.IndexOf()方法,然后通过StringComparison.OrdinalIgnoreCase指定查找过程忽略大小写,代码如下:

string title = "STRING";
bool contains = title.IndexOf("string", StringComparison.OrdinalIgnoreCase) >= 0;

如果需要在项目里大量用到,可以考虑封装成一个方法加到静态工具类StringUtils.cs,或者直接写一个String类的扩展

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

标签:String,C#,Contains,IndexOf,大小写,string
From: https://www.cnblogs.com/itjeff/p/17846469.html

相关文章

  • #ifndef、#define、#ifdef等命令在C#中的应用
    1、#ifndef指令的理解  #ifndef是一个预处理指令,用于判断一个表示符是否被定义。如果该标识符未被定义,则执行条件编译中的代码块。否则,将跳过该代码块。下面是一个简单的粒子。1#ifndefDEBUG2Console.WriteLine("这是调试模式下的代码");3#else4Console.Wr......
  • 13.centos8 关闭防火墙和selinux或者防火墙开启指定端口
    1.firewalld查看防火墙状态systemctlstatusfirewalld关闭防火墙systemctlstopfirewalld开机自启关闭systemctldisablefirewalld开启防火墙   systemctlstartfirewalld开放指定端口   firewall-cmd--zone=public--add-port=1935/tcp--per......
  • 如何在Windows端安装scala
    一.首先确保jdk安装成功  首先在安装之前,确保本地已经安装了JDK1.5以上的版本,在此安装的是1.8版本。并且已经设置了JAVA_HOME环境变量及JDK的bin目录。新建环境变量编辑path系统变量,添加%JAVA_HOME%\bin 验证环境变量是否配置成功。 二.下载Scala安装文件接着我们......
  • centos:subprocess.CalledProcessError: Command ‘[‘ninja‘, ‘-v‘]‘ returned n
    一、原因pytorch版本大于1.5二、解决1、降低pytorch版本将pytorch版本降到1.5以下2、禁用ninjiapytorch默认使用ninjia作为backend,将其禁用。替换为以下代码setup(...,cmdclass={#'build_ext':BuildExtension,'build_ext':BuildExtension.w......
  • FPGA入门笔记004——BCD计数器设计与使用
    1、设置一个最大值为10的四位计数器,Verilog代码如下:moduleBCD_Counter( Clk, Cin, Rst_n, Cout, q); inputClk; //计数器基准时钟 inputCin; //计数器进位输入 inputRst_n; //系统复位 // outputRegCout; //计数器进位输出 outputCout; //计数器进位输出 out......
  • S7-1200和KTP900basic 调试问题解决
    1:KTP900basic和S7-1200无法通讯?环境:型号:KTP900basic,订货号6AV2123-2JB03-OAX0 博图:V17原因,需要将KTP900basic更新最新的17.0面板镜像,一般需要在软件上额外安装SIMATIC_WinCC_Panel_Images_V17.ISO这个文件,下载连接:精智(Comfort)屏下载时提示缺少面板映像(siemens.com.cn......
  • C#下载远程文件并打包
    C#下载远程文件并打包usingSystem;usingSystem.IO;usingSystem.IO.Compression;usingSystem.Net;classProgram{staticvoidMain(){string[]files={"http://www.xxx.com/xx1.xls","http://www.xxx.com/xx2.xls",};......
  • crunch 生成字典
    生成4位验证码crunch44-d2%-t%%%%>crunch.out1、各种符号%代表数字@代表小写字母,代表大写字符^代表特殊符号2、选项-t指定输出格式 -t  %%%%  输出四位纯数字-d允许相同元素最多连续出现的次数-d  2% ......
  • 科学计算时如何正确的使用超线程CPU——使用超线程CPU进行计算密集型任务时的注意事项
    现在这个AI火热的时代科学计算任务占比越来越大,但是平时使用时也有一些不为人注意的地方需要知道,本文就讨论一下使用超线程CPU时的注意事项。 超线程CPU就是现在的多线程CPU,以Intel和AMD的X86CPU为例,一个10个物理核心的CPU则有20个逻辑核心,其中多出来的10个核心就是超线程架构......
  • 【略读论文|时序知识图谱补全】DREAM: Adaptive Reinforcement Learning based on Att
    会议:SIGIR,时间:2023,学校:苏州大学计算机科学与技术学院,澳大利亚昆士兰布里斯班大学信息技术与电气工程学院,Griffith大学金海岸信息通信技术学院摘要:原因:现在的时序知识图谱推理方法无法生成显式推理路径,缺乏可解释性。方法迁移:由于强化学习(RL)用于传统知识图谱上的多跳推理开......