[英]Remove multiple values from a string c#
我有一个字符串示例:
#5/r/n#12/r/n#23/r/n#43/r/n#54/r/n#23/r/n#77/r/n
我需要将这些值传递给一个列表并获取#和/r/n之间的值
到目前为止,我有以下代码:
List<string> result = Regex.Split(String, @"/r/n").ToList();
这将每个值分开,留下 #, 如何从列表中删除 #, 到每个值?
您可以使用LINQ在一行中完成此操作:
List<string> result = Regex.Split(String, @"/r/n").Select(s => s.Replace("#", "")).ToList();
您可以使用修剪功能从字符串的前端和末尾删除特殊字符。
myString.Trim( new Char[] { '#', ' '} )
也可以使用字符串 null 或空操作符来清理任何空字符串:
List<string> result = Regex.Split(myString, @"/r/n").Select(a => a.Trim(new Char[] { '#', ' ' })).Where(b => !String.IsNullOrEmpty(b)).ToList();
您可以使用修剪
char[] charsToTrim = { '#' };
List<string> result = Regex.Split(String, @"/r/n").
.Select(x => x.Trim(charsToTrim))
.ToList();
您也可以在 # 上拆分并修剪另一个。 这是有道理的。
我相信 Trim 会比 Replace 更快——但我没有测试它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.