繁体   English   中英

如何替换字符串中除几个字符外的所有字符和数字

[英]How to I replace all chars and numbers in string except several chars

如何替换字符串中除几个字符外的所有字符和数字,例如“f”、“a”、“l”以避免这样的事情:

String str = "replace different characters except several";
Console.WriteLine("Input: " + str);
str = str.Replace('a', '.').Replace('b', '.').Replace('c', '.');
Console.WriteLine("Output: " + str);

在这些场景中使用正则表达式

String str = "replace different characters except several";
str = Regex.Replace(str, @"[^fal]", "."); //Replace all with "." EXCEPT f,a,l
Console.WriteLine(str);

输出:-“...la.....ff........aa....al”

一种方法是使用Linq并替换除排除列表中的字符之外的每个字符。

char[] excluded = new char[] {'f', 'a', 'l'};       
var output = new string(str.Select(x=> excluded.Contains(x)? x:'.').ToArray());

检查这个demo

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM