C# 如何从基于空格形成的stringArray中删除Whitespce
我有一个字符串,它包含如下值C# 如何从基于空格形成的stringArray中删除Whitespce,c#,arrays,string,C#,Arrays,String,我有一个字符串,它包含如下值 90 524 000 1234567890 2207 1926 00:34 02:40 S 现在,我已经根据空格将这个字符串拆分为字符串数组。现在,我想以这种方式再创建一个字符串数组,以便删除所有空格,并且它只包含实值 此外,我还希望根据从删除空白形成的新字符串数组中选择的内容,从原始字符串数组中获取字符串数组元素的位置 请帮助我。您可以使用StringSplitOptions。通过String.Split
90 524 000 1234567890 2207 1926 00:34 02:40 S
现在,我已经根据空格将这个字符串拆分为字符串数组。现在,我想以这种方式再创建一个字符串数组,以便删除所有空格,并且它只包含实值
此外,我还希望根据从删除空白形成的新字符串数组中选择的内容,从原始字符串数组中获取字符串数组元素的位置
请帮助我。您可以使用
StringSplitOptions。通过String.Split
删除mptyentries
string s = "90 524 000 1234567890 2207 1926 00:34 02:40 S ";
s.Split(' ').Where(x=>!String.IsNullOrWhiteSpace(x))
var values = input.Split(new [] {' '}, StringSplitOptions.RemoveEmptyEntries);
:返回值不包括包含空字符串的数组元素
当Split
方法遇到两个连续的空格时,它将返回一个空字符串。使用StringSplitOptions.RemoveEmptyEntries
将删除空字符串,并仅提供所需的值
您也可以使用LINQ
var values = input.Split().Where(x => x != string.Empty).ToArray();
编辑:如果我理解正确,您需要旧数组中值的位置。如果是这样,您可以创建一个字典,其中键是实际值,值是索引:
var oldValues = input.Split(' ');
var values = input.Split().Where(x => x != string.Empty).ToArray();
var indexes = values.ToDictionary(x => x, x => Array.IndexOf(oldValues, x));
然后
索引[“1234567890”]
将为您提供1234567890
在第一个数组中的位置。您可以使用StringSplitOptions。RemoveEmptyEntries
:
string[] arr = str.Split(new[] { ' ', '\t' }, StringSplitOptions.RemoveEmptyEntries);
注意,我还添加了制表符作为分隔符。还有其他空白字符,如行分隔符,可根据需要添加。完整的清单 方法Trim()将对您有所帮助。我认为[这][1]是您正在寻找的。。。希望有帮助[1]:嗯,比看起来更复杂。。。你想要什么“职位”?第一个字符的索引?元素的计数,例如第三个?等等等等。。。如果524是第二个、第五个、第七个和第十个元素呢?Split将创建一个字符串数组
Where(x=>!String.IsNullOrWhiteSpace(x))
将删除数组中的所有空格或null项。确定。它正在工作。另一个查询是如何搜索var值的元素在原始数组中的位置,其中空格具有此代码。String[]arr=input.Split(“”)代码>@user3816352你为什么需要它?你想找到一个特定项目的索引吗?然后使用Array.IndexOf method是的,我只需要索引。如何从whitepspace中找到没有空格的数组元素我会尽快理解你的意思。。。你能澄清一下吗?例如,我需要索引,但值来自不带空格的数组,但我希望索引来自从代码string[]arr=input.Split(“”)中获得的带空格的原始数组代码>