方法一,String.Replace

str = str.Replace("\r", string.Empty).Replace("\n", string.Empty).Replace("\t", string.Empty);

方法二, String.Aggregate

string[] split = str.Split(new char[] { '\t', '\r', '\n' }, StringSplitOptions.None);
str = split.Aggregate<string>((str1, str2) => str1 + str2);

方法三,Regex.Replace

str = Regex.Replace(str, "[\r\n\t]", string.Empty, RegexOptions.Compiled);

方法四,Char Array

string s = "abc";
int len = s.Length;
char[] s2 = new char[len];
int i2 = 0;
for (int i = 0; i < len; i++)
{
    char c = s[i];
    if (c != '\r' && c != '\n' && c != '\t')
        s2[i2++] = c;
}
return new String(s2, 0, i2);

方法五,String.Concat

String.Concat(str.Split(new char[] { '\t', '\r', '\n' },
    StringSplitOptions.None));

方法六,unsafe char pointer

public static unsafe string StripTabsAndNewlines(string s)
    {
        int len = s.Length;
        char* newChars = stackalloc char[len];
        char* currentChar = newChars;

for (int i = 0; i < len; ++i)
        {
            char c = s[i];
            switch (c)
            {
                case '\r':
                case '\n':
                case '\t':
                    continue;
                default:
                    *currentChar++ = c;
                    break;
            }
        }
        return new string(newChars, 0, (int)(currentChar - newChars));
    }

从性能角度来看,方法六(Char Pointer)最好,然后是方法四(Char Array),并且与Char Pointer相差不大。个人感觉Char Array是最值得使用的方法。 
第二阵营是方法五String.Concat,与方法六和方法四已经有较大的差距了。 
而方法一String.Replace和方法二String.Aggregate则性能更差一筹。 
最弱的就是Regex.Replace,性能垫底。
--------------------- 
作者:alvachien 
来源:CSDN 
原文:https://blog.csdn.net/alvachien/article/details/52438370 
版权声明:本文为博主原创文章,转载请附上博文链接!

C# , 删除字符串中指定字符的几种方法相关推荐

  1. JavaScript删除字符串中指定字符的四种方法

    方法一:使用replace()方法 replace()方法用于将特定字符或字符串替换为其他字符或字符串. 参数:第一个参数是待替换的字符或字符串,第二个参数是替换为的字符或字符串. 可以将第一个参数设 ...

  2. Java删除字符串中指定字符的方法分享

    转自: Java如何删除字符串中指定字符呢? 字符串: 字符串主要用于编程,概念说明.函数解释.用法详述见正文,这里补充一点:字符串在存储上类似字符数组,所以它每一位的单个元素都是可以提取的,如s=& ...

  3. js删除字符串中指定字符

    删除字符串中指定字符 js方法删除指定字符:replace(); let JsonData = {validBegNm:"2022-06-02" }; JsonData.valid ...

  4. 7-2 删除字符串中指定字符 (10分)

    7-2 删除字符串中指定字符 (10分) 删除字符串中的指定字符,字符串和要删除的字符均由键盘输入. 输入格式: 在第一行中输入一个长度不超过20的字符串.并以回车结束:在第二行中输入待删除的一个字符 ...

  5. php 删除字符串里指定字符,php删除字符串中指定字符_php删除字符串

    在做项目时需要对一个字符串进行处理,也就是删除指定的字符,吾爱编程通过这篇文章主要介绍了PHP实现删除字符串中任何字符的函数,涉及php针对字符串的遍历与截取操作技巧,需要的朋友可以参考一下: PHP ...

  6. 9-5 删除字符串中指定字符

    [问题描述]删除字符串中的字符.输入一个字符串s,再输入一个字符c,将字符串s中出现的所有字符c删除,然后输出删除后的字符串. [输入形式] 输入字符串和字符 [输出形式] 输出删除字符后的字符串 [ ...

  7. 删除字符串中指定字符

    题目: 输入字符串s,再输入需要删除的字符c,输出删除所有指定字符之后的字符串,并统计已删除的字符个数 输入要求: 输入的字符串s和字符c各占一行,字符串中可包含空格和换行符 输出要求: 打印删掉指定 ...

  8. JavaScript删除字符串中指定字符

    replace() 方法用于将特定字符或字符串替换为其他字符或字符串,或替换一个与正则表达式匹配的子串. 语法 stringObject.replace(regexp/substr, replacem ...

  9. C语言删除字符串中指定字符

    输入一个字符串以及一个字符,删去字符串中相同字符 实现如下: #include<stdio.h> int main() {void del(char str[],char c);//声明函 ...

最新文章

  1. GTA 5 + AI = ?
  2. 2021高考成绩查询时间 新闻,教育资讯:2021高考成绩一般公布时间 多久出成绩...
  3. 定义跳转插件_虚幻插件Review:Logic Driver Pro 终极状态机插件
  4. 【JavaScript吉光片羽】--- 滑动条
  5. linux的系统移植——交叉编译器
  6. 现在股市里人人都在赚钱!!到底谁在亏钱?我讲一个故事来告诉大家谁亏钱了...
  7. 编译安装Postfix-2.10.10
  8. DFS+剪枝:N个蛋放入M个篮子并可以任意取
  9. Thymeleaf无法显示css样式
  10. 基于javaweb的宠物医院管理系统
  11. 网络安全之特洛伊木马的攻防战略(转)
  12. 网页游戏开发流程及常用技术大盘点
  13. 如何将php改成mp4,如何将swf转换成mp4
  14. Collecting package metadata (current_repodata.json): failed
  15. elementUI的Upload的手动上传及限制数量后隐藏上传样式
  16. 傅里叶变换后面的到底有什么小秘密?
  17. matlab画线段加箭头
  18. 菜鸟好文推荐(九)——程序员”青春饭”问题之我见
  19. 数加平台在数据挖掘项目中的实践
  20. strlen获取char*的大小问题

热门文章

  1. P2887 [USACO07NOV]防晒霜Sunscreen
  2. 输入一个正整数,求该数的阶乘。询问用户是否愿意继续。(使用嵌套循环实现) 【提示】: 1.N 的阶乘公式为:n! = 1 × 2 × … × (n - 1) × n 2.
  3. python打开摄像头_Python 调用摄像头
  4. 【Python】自动操作Autocad的pyautocad库(一)
  5. c2c网站开店的流程图_C2C网店策划书
  6. Linux聊天室项目知识整理(一)
  7. mysql迁移版本_MySQL 5.7迁移升级8.0版本
  8. 12个有效的域名工具及其生成器
  9. PHP7安装redis扩展 Star.Hou
  10. 设计一个动物声音“模拟器”,希望模拟器可以模拟许多动物的叫声