חזרה על נתונים יכולה להפחית את ערך התוכן. בעבודה כסופר, עליך לפעול לפי עיקרון DRY(אל תחזור על עצמך).הנתונים הסטטיסטיים כגון ספירת המילים או מספר המופעים של כל מילה יכולים לאפשר לך לנתח את התוכן, אך קשה לעשות זאת באופן ידני עבור מספר מסמכים. אז מאמר זה מדגים כיצד לספור מילים באופן פרוגרמטי ואת ספירת מופעי המילים של כל מילה בפורמטים של מסמך PDF, Word, Excel, PowerPoint, eBook, Markup ודוא"ל באמצעות C#.

NET API לספירת מילים והתרחשויות

GroupDocs.Parser מספק את פתרון ניתוח המסמכים למפתחים. לחילוץ טקסט ממסמכים ולספירת מופעים, נשתמש ב-GroupDocs.Parser for .NET שלו. עוד מאפשר ה-API לחלץ תמונות ומטא נתונים מרשימה ארוכה של פורמטים של מסמך נתמך כמו מסמכי עיבוד תמלילים, מצגות, גיליונות אלקטרוניים, מיילים, מסדי נתונים, ספרים אלקטרוניים ועוד רבים אחרים.

אתה יכול להוריד את קובצי ה-DLL או ה-MSI מ-5 או להתקין את ה-API על-ידי הוספת החבילה שלו לאפליקציית NET שלך דרך NuGet.

PM> Install-Package GroupDocs.Parser

ספירת מילים באמצעות C#

עבור ספירת המילים, העיקר הוא לנתח ולחלץ את כל תוכן המסמך. לאחר חילוץ הטקסט נוכל לפצל את תוכנו לאוסף של משפטים ומילים. השלב הבא מאפשר לספור את המילים בתוך המסמך באמצעות C#.

  • טען את המסמך באמצעות המחלקה Parser.
  • אחזר את הטקסט של המסמך שנטען אל TextReader.
  • לקבל the text of the document from the TextReader as a string.
  • פצל את הטקסט למילים ושמור אותן במערך מחרוזות.
  • בצע ספירת מילים.

קוד המקור של C# הבא סופר את מספר המילים במסמך.

// ספירת מילים במסמך PDF באמצעות C#
using (Parser parser = new Parser("path/document.pdf"))
{                
	// חלץ טקסט לתוך הקורא
	using (TextReader reader = parser.GetText())
	{
		string text = reader.ReadToEnd();
		char[] chars = { ' ', '.', ',', ';', ':', '?', '\n', '\r' };
		// פיצול מילים
		string[] words = text.Split(chars);
		// הדפסת ספירת המילים הכוללת
		Console.WriteLine("Total word count: {0}", stats.Count);
	}
}

התרחשות ספירת מילים ב-C#

באופן דומה, אנו יכולים לספור כמה פעמים נעשה שימוש במילה או בביטוי מסוים במסמך. על ידי שימוש בתכונה זו, תוכל להימנע מחזרה מוגזמת של כל מילה בתוך מאמר. השלבים הבאים סופרים את המופע של כל מילה בשימוש במסמך.

  • טען את המסמך באמצעות המחלקה Parser.
  • אחזר את הטקסט של המסמך שנטען אל TextReader.
  • קראו ופצלו את כל הטקסט לאוסף המילים.
  • חצו את אוסף המילים כדי לספור מילים.

קטע הקוד הבא של C# סופר את המופע של כל מילה ייחודית במסמך.

// ספירת מילים ייחודיות והמופעים שלהן במסמך PDF באמצעות C#
using (Parser parser = new Parser("path/document.pdf"))
{                
	// חלץ טקסט לתוך TextReader
	using (TextReader reader = parser.GetText())
	{
		Dictionary<string, int> stats = new Dictionary<string, int>();
		string text = reader.ReadToEnd();
		char[] chars = { ' ', '.', ',', ';', ':', '?', '\n', '\r' };
		// פיצול מילים
		string[] words = text.Split(chars);
		int minWordLength = 2; // Consider a word having more than 2 characters

		// לחזור על אוסף המילים כדי לספור התרחשויות
		foreach (string word in words)
		{
			string w = word.Trim().ToLower();
			if (w.Length > minWordLength)
			{
				if (!stats.ContainsKey(w))
				{
					stats.Add(w, 1); // add new word to collection
				}
				else
				{
					stats[w] += 1; // update word occurrence count
				}
			}
		}
		// סדר את האוסף לפי ספירת מילים
		var orderedStats = stats.OrderByDescending(x => x.Value);
		
    		// הדפס תוצאות ספירת מילים
		Console.WriteLine("Total word count: {0}", stats.Count);

    		foreach (var pair in orderedStats)
		{
			Console.WriteLine("Total occurrences of {0}: {1}", pair.Key, pair.Value);
		}
	}
}

להלן הפלט של הקוד לעיל:

ספירת מופעי מילים

קבל רישיון API בחינם

אתה יכול לקבל רישיון זמני בחינם על מנת להשתמש ב-API ללא מגבלות ההערכה.

סיכום

לסיכום, למדת איך לספור מילים במסמך באמצעות C#. בנוסף, דנו כיצד נוכל לקבל את ספירת מופעי המילים עבור כל מילה במסמך. נסה לפתח את אפליקציית .NET נגד המילים המקוונת שלך. לפרטים נוספים ולמידה על ה-API, בקר בתיעוד. לשאלות, צור איתנו קשר דרך הפורום.

ראה גם