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

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

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

הורד והגדר

קבל את הספרייה מהקטע הורדות. עבור יישום Java המבוסס על Maven, פשוט הוסף את התצורה הבאה של pom.xml. לאחר מכן, תוכל להריץ את הדוגמאות של מאמר זה, ודוגמאות רבות נוספות הזמינות ב-GitHub. לפרטים, אתה יכול לבקר ב-API Reference.

<repository>
	<id>GroupDocsJavaAPI</id>
	<name>GroupDocs Java API</name>
	<url>https://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
	<groupId>com.groupdocs</groupId>
	<artifactId>groupdocs-parser</artifactId>
	<version>22.3</version> 
</dependency>

ספירת מילים במסמך באמצעות Java

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

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

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

// ספירת מילים במסמך PDF באמצעות Java
// ספירת מילים ייחודיות והמופעים שלהן במסמך PDF באמצעות Java
try (Parser parser = new Parser("path/document.pdf")) {

	TextReader reader = parser.getText();
	String text = reader.readToEnd();

	String[] words = text.split("\\s+|\\.|\\,|\\?|\\:|\\;");
	System.out.println("Length:" + words.length);
}

ספירת מילים ב-Java

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

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

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

// ספירת מילים ייחודיות והמופעים שלהן במסמך PDF באמצעות Java
try (Parser parser = new Parser("path/document.pdf")) {

	TextReader reader = parser.getText();
	String text = reader.readToEnd();

	String[] words = text.split("\\s+|\\.|\\,|\\?|\\:|\\;");
	Hashtable<String, Integer> wordCountTable = new Hashtable<String, Integer>();

	int minWordLength = 2;
	for (String word : words) 
	{
		String uniqueWord = word.toLowerCase();
		if (uniqueWord.length() > minWordLength) 
		{
			if (wordCountTable.containsKey(uniqueWord))	{
				wordCountTable.replace(uniqueWord, wordCountTable.get(uniqueWord),
						wordCountTable.get(uniqueWord).intValue() + 1);
			} else {
				wordCountTable.put(uniqueWord, 1);
			}

		}
	}
	wordCountTable.entrySet().forEach(entry ->{
		System.out.println(entry.getKey() + ": " + entry.getValue());
	});
}

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

lorem: 6
ipsum: 2
eleifend: 2
integer: 1
augue: 3
aliquet: 1
ligula: 1
dolor: 1
venenatis: 2
viverra: 1
amet: 2
urna: 1
senectus: 2
lectus: 2
volutpat: 1
massa: 1
blandit: 1
dapibus: 1
habitant: 2
pharetra: 2
...

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

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

סיכום

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

ראה גם