פיצול הטקסט למילים
חלק מהיחידה לוגיקה וזרימת התוכנית במסלול ה-Dart של Coddy. שיעור 53 מתוך 65.
אתגר
קלבהמשך לפרויקט מנתח הטקסט שלך, עכשיו תממש את הפונקציונליות לפיצול מילים. השלב הזה יפרק את הטקסט שלך למילים בודדות, ויצור בסיס לניתוח ברמת המילה בשיעורים הבאים.
- השתמש במשתנה
textToAnalyzeמההגדרה הקודמת שלך - השתמש במשתנה
totalCharactersמשלב ספירת התווים שלך - פצל את הטקסט למילים בודדות באמצעות המתודה
split(), כאשר התו רווח משמש כמפריד - אחסן את רשימת המילים שהתקבלה במשתנה שנקרא
wordList - הצג את תוצאות ניתוח פיצול המילים בפורמט המדויק שמוצג למטה
- הצג את הטקסט המקורי, את מספר התווים ואת רשימת המילים בעיצוב מתאים
לדוגמה, אם מנתח הטקסט שלך הוגדר עם "Hello world!", התוכנית שלך אמורה להציג:
Text Analysis Tool - Word Splitting
====================================
Analyzing text: "Hello world!"
Total characters: 12
====================================
Word Splitting Results:
Words found: [Hello, world!]
====================================
Word splitting completed successfully.אם מנתח הטקסט שלך הוגדר עם "The quick brown fox", התוכנית שלך אמורה להציג:
Text Analysis Tool - Word Splitting
====================================
Analyzing text: "The quick brown fox"
Total characters: 19
====================================
Word Splitting Results:
Words found: [The, quick, brown, fox]
====================================
Word splitting completed successfully.אם מנתח הטקסט שלך הוגדר עם "Programming is fun!", התוכנית שלך אמורה להציג:
Text Analysis Tool - Word Splitting
====================================
Analyzing text: "Programming is fun!"
Total characters: 19
====================================
Word Splitting Results:
Words found: [Programming, is, fun!]
====================================
Word splitting completed successfully.התוכנית שלך צריכה להשתמש במתודה split(' ') על המחרוזת כדי לפצל אותה למילים בודדות שמופרדות ברווחים. הרשימה שתתקבל תכיל כל מילה כרכיב מחרוזת נפרד, שישמש לספירת מילים ולניתוח בשיעורים הבאים. שים לב שסימני הפיסוק יישארו צמודים למילים שאיתן הם מופיעים.
נסו בעצמכם
import 'dart:io';
void main() {
String? textToAnalyze = stdin.readLineSync();
int totalCharacters = textToAnalyze!.length;
print('Text Analysis Tool - Character Count');
print('====================================');
print('Analyzing text: "$textToAnalyze"');
print('====================================');
print('Character Analysis Results:');
print('Total characters (including spaces): $totalCharacters');
print('====================================');
print('Character counting completed successfully.');
}כל השיעורים ביחידה לוגיקה וזרימת התוכנית
1מניפולציות מתקדמות ברשימות
מאפייני רשימה: ראשון ואחרוןמצב הרשימה: isEmpty ו-isNotEmpהיפוך רשימההוספה לרשימה: insertהסרת פריטים מרשימה: removeWhereחיפוש ברשימה: indexOfמיון רשימהערבוב רשימהסיכום – מארגן רשימות4מניפולציה מתקדמת של Map
מעבר על Mapבדיקה אם מפתחות וערכים קיימיםמאפייני Map: מפתחות וערכיםהוספה מותנית: putIfAbsentהסרת רשומות מ־MapMaps מקונניםסיכום – עדכון מלאי2פעולות פונקציונליות על רשימות
טרנספורמציה באמצעות 'map'סינון באמצעות 'where'שימוש ב-'.toList()'בדיקת תנאים באמצעות 'any'תנאים באמצעות 'every'איתור באמצעות 'firstWhere'סיכום – סינון נתונים5פרויקט: חישוב עגלת קניות
הגדרת הפרויקטהוספת פריטים לעגלה8פרויקט: מנתח טקסט פשוט
סקירה כללית והגדרת הפרויקטספירת תווים3קבוצות
מהי קבוצה?יצירת קבוצההוספה והסרה מקבוצותבדיקת נוכחות של איברים בקבוצההמרת רשימה לקבוצהאיחוד קבוצותחיתוך קבוצותהפרש קבוצותסיכום – רשימת אורחים ייחודית6טיפול בסיסי בשגיאות
מהן חריגות?בלוק ה-try-catchתפיסת חריגות באמצעות onבלוק ה-finallyהשלכת חריגהסיכום – חלוקה בטוחה9טיפוסי מנייה (Enums)
מה הם Enums?הגדרת Enum פשוטשימוש ב-Enums במשתניםEnums במשפטי 'switch'סיכום – רמזורתרגלו בעצמכם: קומפיילר Dart אונליין