用多个字符分割字符串
本文关键字:分割 字符串 字符 | 更新日期: 2023-09-27 18:01:18
if (clientInfo.cf.geo_region != null)
{
List<string> geoListRegion = clientInfo.cf.geo_region.Split(new string[] { ",", ", " }, StringSplitOptions.RemoveEmptyEntries).ToList();
rs_product_hit = rs_product_hit.Where(ph => geoListRegion.Contains(ph.region));
}
我希望能够输入"AMAC,South America"或"AMAC,South America",并在逗号后面加上/不加空格的地方进行分割。不幸的是,我的输出只是分隔逗号而不加空格,如果输入是"AMAC,South America",则输出是正确的。我该怎么做才能得到相同的结果,不管有没有逗号后面的空格?
简单的解决方法:将拆分字符串的顺序更改为new string[] { ", ", ","}
将解决此问题。您还可以使用string.Trim()
来删除前导或尾随空格。
你很接近了,但你需要做Trim()
if (clientInfo.cf.geo_region != null)
{
List<string> geoListRegion = clientInfo.cf.geo_region.Split(new string[] { ",", ", " }, StringSplitOptions.RemoveEmptyEntries).ToList();
rs_product_hit = rs_product_hit.Where(ph => geoListRegion.Contains(ph.region.Trim()));
}
两种方式:
-
按照Bastian Thiede的回答交换你的分割字符串的顺序。
-
正则表达式。使用
Regex.Replace(myString, @",'s+", "")
删除逗号后的所有空白。使用此方法的好处是它可以删除逗号后面的任意数量的空格。