C#字符串替换_无视大小写
C#里的string.Replace是不能无视大小写的。
首先想到的是正则表达式,在网上查了下,果然有用正则表达式配合一些逻辑运算,实现无视大小写的字符串替换方法。但是正则表达式的方法用起来很麻烦,实验证明速度也不是最快。
而我要说的是用起来最方便,执行速度也是最快的一种。就是使用Microsoft.VisualBasic命名空间里的Strings。
1.首先添加引用Microsoft.VisualBasic.Dll
2.引入命名空间using Microsoft.VisualBasic;
使用Replace方法,以下为参数:
Strings.Replace(原字符串的内容,要替换的字段内容,替换后的字段内容,从第几位开始替换(注意默认为1),替换的次数(-1表示所有),是否无视大小写);
例:string str="AaBbCc_AaBbCc";
//将原字符串中的第一个Bb替换为Dd
str = Strings.Replace(str, "Bb", "Dd", 1, 1, CompareMethod.Binary);
打印结果:AaDdCc_AaBbCc
(CompareMethod.Binary的意思是用二进制去找,由于大小写字母的二进制代码显然是不同的,所以是不无视大小写的)
//将原字符串中的所有Bb替换为Dd
str=Strings.Replace(str,"Bb","Dd",1,-1,CompareMethod.Binary);
打印结果:AaDdCc_AaDdCc
//将原字符串中的所有Bb替换为Dd,以无视大小写的情况
str=Strings.Replace(str,"BB","Dd",1,-1,CompareMethod.Text);
打印结果:AaDdCc_AaDdCc
(CompareMethod.Text的意思是用文本去找,所以是无视大小写的)
这种方法只需要把几个重要的参数传进去就可以了,使用非常方便。由于它的原理是先Split(),再Join(),所以速度非常快。比正则表达式的方法快了许多。
需要注意的是,Replace不能替换空字符串。例如
string str="";
这时如果你用Strings.Replace去替换的话,将返回NULL
str=Strings.Replace(str, "", "Test", 1, -1, CompareMethod.Binary);
str==NULL为真
C#字符串替换_无视大小写的更多相关文章
- Java字符串替换忽略大小写
今天在做字符串替换时忽略大小写,网上找到了一个非常简便的方法,使用String的replaceAll方法. java.lang.String.replaceAll(String regex, Stri ...
- C#中正则表达式进行忽略大小写的字符串替换
在C#里要进行忽略大小写的字符串替换,用string的Replace是很难做到的,即使花了天大的力气做到了,效率仍然是很低的,正确的方法应该是使用正则表达式. 要使用正则表达式,首先需要引用命名空间: ...
- C# 无视大小写比价字符串以及字符串大小写转换
//C#通过ToUpper()方法将字符串转换成大写,代码如下: string sentence= "this is in upper case."; Console.WriteL ...
- PHP 字符串替换 substr_replace 与 str_replace 函数
PHP 字符串替换 用于从字符串中替换指定字符串. 相关函数如下: substr_replace():把字符串的一部分替换为另一个字符串 str_replace():使用一个字符串替换字符串中的另一些 ...
- 20170721_python字符串操作_《python语言及其应用》
str = 'abcde...wxyz' [num]提取指定字符 str[0] == 'a' str[1] == 'b' str[-1] == 'z' [start:end:step]分片/切片,一定 ...
- Javascript 将字符串替换为特定的规律的字符串
Javascript 将字符串替换为特定的规律的字符串 这是测试过程,可以再简化一点. function spinalCase(str) { // "It's such a fine lin ...
- EL 表达式截取字符串/替换字符/……
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> 下面是 ...
- C#不区分大小写的字符串替换(Replace)函数
在.NET中,不调用C++/CLI,进行字符串替换有好几种方法: 1.最常用的,就是String实例.Replace(),但这个不能忽略大小写. 2.System.Text.Regex(Regular ...
- Python 字符串_python 字符串截取_python 字符串替换_python 字符串连接
Python 字符串_python 字符串截取_python 字符串替换_python 字符串连接 字符串是Python中最常用的数据类型.我们可以使用引号('或")来创建字符串. 创建字符 ...
随机推荐
- Dos命令 WIN10 WIFI命令
设置WIFI命令: netsh wlan set hostednetwork ssid=T key=123456798 mode=allow netsh wlan start hostednetwor ...
- ubuntu 安装 删除 卸载 Deb 包文件
图形界面: 安装deb 直接双击图标,输入密码后就可自动安装. 卸载deb 1. 菜单-系统->系统管理->新立得软件包管理器 或 Alt+F2(运行窗口)输入 sudo synaptic ...
- 消息中间件ActiveMQ、RabbitMQ、RocketMQ、ZeroMQ、Kafka如何选型?
最近要为公司的消息队列中间件进行选型,市面上相关的开源技术又非常多,如ActiveMQ.RabbitMQ.ZeroMQ.Kafka,还有阿里巴巴的RocketMQ等. 这么多技术,如何进行选型呢? 首 ...
- iis 重启命令
打开IIS配置窗口的CMD命令:开始---运行---CMD----输入inetmgr 直接使用CMD我们可以操作很多事情,比如启动IIS,重启IIS,停止IIS 重启IIS服务器,开始->运行 ...
- jdbc.properties文件的配置
使用配置文件访问数据库的优点是: 一次编写随时调用,数据库类型发生变化只需要修改配置文件. 配置文件的设置: 在配置文件中,key-value对应的方式编写. 不好意思我只用过这两个数据库 :)--- ...
- SqlServer批量插入(SqlBulkCopy、表值参数)
之前做项目需要用到数据库的批量插入,于是就研究了一下,现在做个总结. 创建了一个用来测试的Student表: CREATE TABLE [dbo].[Student]( [ID] [int] PRIM ...
- bootstrap的其他
情境文本颜色 <p class="text-muted">...</p> <p class="text-primary">. ...
- Flask之flask_script
flask端口占用 解决方案: lsof -i:5000 #查询是哪个进程占用的 kill PID 杀掉进程 flask_script之Manager类 from flask import Flask ...
- C++_函数1-编程的基本模块函数
以下是<C++ Primer Plus>中第七章的内容: 使用C++函数的3个步骤: 提供函数定义 提供函数原型 调用函数 7.1.1 定义函数 函数分成两类:没有返回值的函数.有返回值的 ...
- 文件对象FSO应用 文件对象FSO应用
FileSystemObject对象被用来访问服务器上的文件系统.这个对象能够处理文件.文件夹和目录路径.用它来检索文件系统信息也是可能的. 下面的代码创建了一个文本文件,并写入了一些文本: dim ...