CodeGym /בלוג Java /Random-HE /שיטה Java String replace()
John Squirrels
רָמָה
San Francisco

שיטה Java String replace()

פורסם בקבוצה

מהן שיטות replace() הנפוצות של מחלקת String ב-Java?

המחלקה String מספקת ארבעה סוגים שונים של שיטות replace() ב-Java. כל אחת מהשיטות מתייחסת למקרה שימוש ספציפי. שמותיהם מפורטים להלן:
  1. להחליף (char, char)
  2. להחליף (מחרוזת, מחרוזת)
  3. replaceAll(מחרוזת, מחרוזת)
  4. replaceFirst(מחרוזת, מחרוזת)
בהמשך הפוסט, נראה איך כל שיטה עובדת. כמו כן, נבחן את הצורך בשימוש באמור לעיל במקרים שונים של שימוש.

שיטת Java String replace()‎

שיטת Java String replace() משמשת להחלפת תו שצוין בתו הנתון שניהם מועברים כפרמטרים. שיטה זו מתאימה להחלפת כל תו במחרוזת בדמות אחרת שתבחר.

כותרת שיטה

public String replace(char oldCharacter, char newCharacter)

פרמטרים של שיטה

השיטה לוקחת שני פרמטרים או ארגומנטים מסוג 'char'.
  • char oldCharacter מכיל את הדמות שיש להחליף.

  • char newCharacter מחזיק את הדמות שתשמש במקום ה-oldCharacter.

סוג החזרה

השיטה String replace מחזירה את המחרוזת המעודכנת לאחר החלפת התו הרצוי.

דוגמא

בואו נסתכל על דוגמאות פשוטות שונות כדי להבין כיצד שיטה זו פועלת.
public class Driver {

	public static void main(String[] args) {

	      String myString = "An apple a day, keeps the doctor away!";
		System.out.println("Original Sentence: \t\t\t" + myString);

		// Example 1 using String replace(char, char)
		char oldCharacter = 'a'; // replacing character
		char newCharacter = 'A'; // character to be replaced
            String updatedString = myString.replace(oldCharacter, newCharacter);
		System.out.println("After replacing '" + oldCharacter + "' with '" +
		// 'a' is replaced and not with 'A' as the method is case sensitive
		newCharacter + "': \t\t" + updatedString);

		// Example 2 using String replace(String, String)
		String oldString = "apple";
		String newString = "orange";
		// using the method String replace
            String updatedString1 = myString.replace(oldString, newString);
            System.out.println("Replacing '" + oldString + "' with '" +
        		newString + "': \t" + updatedString1 + "\n");
	}
}

תְפוּקָה

משפט מקורי: תפוח ליום, מרחיק את הרופא! לאחר החלפת 'a' ב-'A': תפוח ביום, מרחיק את הרופא! החלפת 'תפוח' ב'תפוז': תפוז ביום, מרחיק את הרופא!
הערה: מומלץ להכיר את הביטויים הרגולריים , המכונים regex, לפני שתתקדם.

שיטת Java String replaceAll()‎

השיטה Java String replaceAll() מחליפה כל מופע בודד של ביטוי רגולרי המועבר כפרמטר במחרוזת הרצויה . המשמעות היא שכל עותק של ביטוי רגולרי מתעדכן על ידי המחרוזת החלפה.

כותרת שיטה

public String replaceAll(String regularExpression, String replacementStr)

פרמטרים של שיטה

שיטה זו לוקחת שני ארגומנטים מסוג 'מחרוזת'.
  • מחרוזת regularExpression מחזיקה את ה-Regex (התבנית) שיש להחליף.

  • String replacementStr הוא המחרוזת שתשמש במקום ה-Regex.

סוג החזרה

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

דוגמא

שיטה זו משמשת בדרך כלל לעדכון רשומות נתונים ענקיות. להבנה מעמיקה יותר, בואו נסתכל על דוגמאות שונות של שיטת replaceAll() .
public class Driver1 {

	public static void main(String[] args) {

		String myString = "Mastering a programming language begins with great logic building!";
		System.out.println("Original Sentence: \t\t\t" + myString);

		String regex = "[\sa]"; // This regex is used to remove all spaces and a(s) in the string
		String replacementStr = "";
		// using the method String replaceAll(); to remove ALL spaces
		System.out.println("After replacing \"" + regex + "\" with \"" + replacementStr + "\": \t"
				+ myString.replaceAll(regex, replacementStr) + "\n");
	}
}

תְפוּקָה

משפט מקורי: שליטה בשפת תכנות מתחילה בבניית היגיון נהדרת! לאחר החלפת "[ a]" ב"": Msteringprogrmminglngugebeginswithgretlogicbuilding!

שיטת Java String replaceFirst()‎

השיטה Java String replaceFirst() מחליפה את המופע הראשון היחיד של ה-Regex המועבר לשיטה זו.

כותרת שיטה

public String replaceFirst(String regularExpression, String replacementStr)

פרמטרים של שיטה

שיטה זו לוקחת שני ארגומנטים מסוג 'מחרוזת'.
  • מחרוזת regularExpression מחזיקה את ה-Regex (התבנית) שיש להחליף.

  • String replacementStr הוא המחרוזת שתשמש במקום ה-Regex.

סוג החזרה

השיטה מחזירה מחרוזת חדשה לאחר החלפת רק המופע הראשון של ה-Regex.

דוגמא

ניתן להשתמש בשיטה זו כאשר ברצונך לעדכן רק את הרשומה הראשונה שנמצאה של הארגומנט התואם שלך. בואו נחקור איך זה עובד בדוגמה למטה.
public class Driver2 {

	public static void main(String[] args) {

		String myString = "Good Morning. You wonders of Nature. Today is a great day to be happy.";
		System.out.println("Original Sentence: \t\t" + myString);

		String regex = "\\."; // regex to update period / full stop
		String replacementStr = "!";
		// using the method String replaceFirst();
		// to remove first period(.) with exclamation(!) mark
		System.out.println("After replacing '" + regex + "' with '" + replacementStr + "': \t"
				+ myString.replaceFirst(regex, replacementStr));
	}
}

תְפוּקָה

משפט מקורי: בוקר טוב. אתם פלאי הטבע. היום הוא יום נהדר לשמוח. לאחר החלפת '\.' עם '!': בוקר טוב! אתם פלאי הטבע. היום הוא יום נהדר לשמוח.

סיכום

אז אלו היו כמה יסודות של שימוש בשיטות replace() ב-Java. כמו תמיד, אנו ממליצים בחום ללמוד על ידי תרגול. עד לפעם הבאה, המשיכו ללמוד ולהמשיך לגדול!
הערות
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION