计算Array中的字符数和单词数

时间:2011-05-22 13:45:36

标签: c# .net visual-studio arrays

如何统计字符数和数量C#中的数组中的单词?

例如:

char[] arr= "My name is ABC XYZ".Tochararray();

应该返回5作为单词数,将18(空格作为字符)作为字符数返回。

谢谢!

2 个答案:

答案 0 :(得分:4)

您不能直接将字符串分配给c#

中的整数/字符数组
string s = "My name is ABC XYZ";

int l = s.Length // 18 chars;
int w = s.Split(' ').Count(); // 5 words 

答案 1 :(得分:4)

这是使用LINQ进行简单(基于空格的)字数的方法:

string s = "My name is ABC XYZ";
int l = s.Length;                   // 18
int w = s.Count(x => x == ' ') + 1; // 5

这通常比Split()调用执行得更好,因为它将字符串作为可枚举的字符流处理,并且只是计算它而不是创建一个字符串数组来存储单词。