我们给大家总计了C#中判断英文单词个数的方法以及排序的技巧,对此有需要的朋友可以测试下。
方法一:
判断英文单词个数:
using System;
namespace FindWord
{
class Program
{
static void Main(string[] args)
{
string space = " ";
string str = "hello world" + space;
int count = 0;
bool start = false;
for (int i=0;i<str.Length;i++)
{
if (Char .IsLetter(str[i]))
{
start = true;
}
if (!Char.IsLetter(str[i])&&start)
{
count++;
start = false;
}
}
Console.WriteLine(count);
Console.ReadLine();
}
}
}
方法二:
C#统计英文字符串中单词个数思路如下:
1.使用的Hashtable(高效)集合,记录每个单词出现的次数
2.采用ArrayList对Hashtable中的Keys按字母序排列
3.排序使用插入排序(稳定)
public void StatisticsWords(string path) {
if (!File.Exists(path))
{
Console.WriteLine("文件不存在!");
return;
}
Hashtable ht = new Hashtable(StringComparer.OrdinalIgnoreCase);
StreamReader sr = new StreamReader(path, System.Text.Encoding.UTF8);
string line = sr.ReadLine();
string[] wordArr = null;
int num = 0;
while (line.Length > 0)
{
// MatchCollection mc = Regex.Matches(line, @"\b[a-z]+", RegexOptions.Compiled | RegexOptions.IgnoreCase);
//foreach (Match m in mc)
//{
// if (ht.ContainsKey(m.Value))
// {
// num = Convert.ToInt32(ht[m.Value]) + 1;
// ht[m.Value] = num;
// }
// else
// {
// ht.Add(m.Value, 1);
// }
/