תרגיל - השתמש בשיטות Remove() ו- Replace()
- 8 דקות
בתרגיל זה, אתה מסיר תווים ממחרוזת באמצעות פעולת השירות Remove() ומחליף תווים באמצעות Replace() השיטה.
לעתים, עליך לשנות את התוכן של מחרוזת, להסיר או להחליף תווים. אמנם ניתן להחליף תווים בכלים שאתה כבר מכיר, אבל נדרשת אחסון זמנית של מחרוזות לאחסון ולתפור מחדש. למרבה המזל, סוג string הנתונים כולל שיטות מוכללות אחרות, ו- Remove()Replace() עבור תרחישים מיוחדים אלה.
השתמש בפעולת Remove() השירות
בדרך כלל יש להשתמש Remove() במיקום רגיל ועקבי של התווים שברצונך להסיר מהמחרוזת.
תרגיל זה כולל נתונים המאוחסנים בקבצים ישנים בעלי אורך קבוע, עם מיקומי תווים שהוקצו עבור שדות מידע מסוימים. חמש הספרות הראשונות מייצגות מספר זיהוי לקוח. 20 הספרות הבאות מכילות שם של לקוח. ששת המשרה הבאות מייצגות את סכום החשבונית העדכני ביותר של הלקוח, ושלושת המקומות האחרונים מייצגים את מספר הפריטים שהוזמנו בחשבונית זו.
בשלבים הבאים, עליך להסיר את שם הלקוח כדי לעצב את הנתונים כך שניתן יהיה לשלוח אותם לתהליך נפרד. מאחר שאתה יודע את המיקום והאורך המדויקים של שם המשתמש, באפשרותך להסיר אותו בקלות באמצעות Remove() השיטה.
הסרת תווים במיקומים ספציפיים ממחרוזת
מחק או השתמש באופרטור הוספת
//כדי להוסיף הערות לכל הקוד מהתרגילים הקודמים.עדכן את הקוד שלך בעורך קוד Visual Studio באופן הבא:
string data = "12345John Smith 5000 3 "; string updatedData = data.Remove(5, 20); Console.WriteLine(updatedData);בתפריט קוד Visual Studio קובץ, בחר שמור.
יש Program.cs הקובץ לפני בנייה או הפעלה של הקוד.
בלוח EXPLORER, כדי לפתוח מסוף במיקום התיקיה TestProject, לחץ באמצעות לחצן העכבר הימני על TestProjectולאחר מכן בחר פתח במסוף משולב.
לוח מסוף אמור להיפתח, ועלי לכלול שורת פקודה המציגה שמסוף פתוח במיקום התיקיה TestProject שלך.
בשורת הפקודה Terminal, כדי להפעיל את הקוד, הקלד dotnet מכן הקש Enter.
אתה אמור לראות את הפלט הבא:
123455000 3השיטה
Remove()פועלת באופן דומה לשיטהSubstring()זו. עליך לספק מיקום התחלה ואת האורך כדי להסיר תווים אלה מהמחרוזת.
השתמש בפעולת Replace() השירות
נעשה Replace() שימוש בפעולת השירות כאשר עליך להחליף תו אחד או יותר בתו אחר (או ללא תו). פעולת Replace() השירות שונה מהשיטות האחרות הנמצאות בשימוש עד כה, היא מחליפה כל מופע של התווים הנתון, ולא רק את המופע הראשון או האחרון.
הסרת תווים ללא קשר למקום שבו הם מופיעים במחרוזת
עדכן את הקוד שלך בעורך קוד Visual Studio באופן הבא:
string message = "This--is--ex-amp-le--da-ta"; message = message.Replace("--", " "); message = message.Replace("-", ""); Console.WriteLine(message);שמור את קובץ הקוד ולאחר מכן השתמש ב- Visual Studio Code כדי להפעיל את הקוד.
אתה אמור לראות את הפלט הבא:
This is example dataכאן השתמשת בשיטה
Replace()פעמיים. בפעם הראשונה שהחלפת את המחרוזת--ברווח. בפעם השניה החלפת את המחרוזת במחרוזת-ריקה, פעולה שמסירה לחלוטין את התו מהמחרוזת.
סיכום
להלן שני דברים חשובים שיש לזכור:
- פעולת
Remove()השירות פועלת כמו פעולת השירותSubstring(), פרט למחיקת התווים שצוינו במחרוזת. - פעולת
Replace()השירות מחליפה את כל המופעים של מחרוזת במחרוזת חדשה.
בדוק את הידע שלך
משוב
האם עמוד זה היה מועיל?
לא
זקוק לעזרה בנושא זה?
רוצה לנסות להשתמש ב'שאל את Learn' כדי להבהיר או להדריך אותך בנושא זה?