المقدمة
في هذا المقال، ستتعلم بعض الطرق المختلفة لإزالة حرف من كائن String
في لغة البرمجة جافا. على الرغم من أن فئة String
لا تحتوي على طريقة remove()
، يمكنك استخدام تغييرات على طريقتي replace()
وsubstring()
لإزالة الأحرف من السلاسل.
ملحوظة: الكائنات String
لا تقبل التغيير، وهذا يعني أنها لا يمكن تعديلها بعد إنشائها. جميع طرق فئة String
المذكورة في هذا المقال تعيد كائن String
جديدًا ولا تقوم بتغيير الكائن الأصلي. نوع السلسلة التي تستخدمها يعتمد على متطلبات برنامجك. اعرف المزيد حول أنواع أخرى من فئات السلاسل ولماذا السلاسل لا تتغير في جافا.
تحتوي فئة String
على الطرق التالية التي يمكنك استخدامها لاستبدال أو إزالة الأحرف:
replace(char oldChar, char newChar)
: تعيد كائنString
جديدًا يستبدل جميع حالاتoldChar
في السلسلة المعطاة بـnewChar
. يمكنك أيضًا استخدام طريقةreplace()
، بتنسيقreplace(CharSequence target, CharSequence replacement)
، لتعيد كائنString
جديدًا يستبدل فقرة في السلسلة المعطاة.replaceFirst(String regex, String replacement)
: تعيد كائن نصيًا جديدًا يستبدل الجزء الفرعي الأول الذي يتطابق مع التعبير العادي في السلسلة المعطاة بالاستبدال.replaceAll(String regex, String replacement)
: تعيد كائن نصيًا جديدًا يستبدل كل جزء فرعي يتطابق مع التعبير العادي في السلسلة المعطاة بالاستبدال.substring(int start, int end)
: تعيد كائن نصيًا جديدًا يحتوي على متسلسلة فرعية من الأحرف الموجودة حاليًا في هذا التسلسل. تبدأ المتسلسلة الفرعية في البداية المحددة وتمتد إلى الحرف في المؤشر نهاية ناقص 1.
يرجى ملاحظة أن الوسيط الأول لطرق replaceAll()
و replaceFirst()
هو تعبير عادي. يمكنك استخدام التعبير العادي لإزالة نمط من سلسلة.
ملحوظة: يجب عليك استخدام علامات الاقتباس المزدوجة للإشارة إلى قيم السلسلة الحرفية الحرفية عند استخدام طرق replace()
. إذا استخدمت علامات الاقتباس الفردية ، فإن JRE يفترض أنك تشير إلى ثابت حرفي وستحصل على خطأ عند تجميع البرنامج.
إزالة حرف من سلسلة في جافا
يمكنك إزالة جميع حالات حرف معين من سلسلة في جافا باستخدام الطريقة replace()
لاستبدال الحرف بسلسلة فارغة. يقوم الكود المثال التالي بإزالة كل حالات الحرف الصغير “a
” من السلسلة المعطاة:
String str = "abc ABC 123 abc";
String strNew = str.replace("a", "");
Outputbc ABC 123 bc
إزالة الفراغات من سلسلة في جافا
يمكنك إزالة الفراغات من سلسلة في جافا باستخدام الطريقة replace()
لاستبدال الفراغات بسلسلة فارغة. يقوم الكود المثال التالي بإزالة كل الفراغات من السلسلة المعطاة:
String str = "abc ABC 123 abc";
String strNew = str.replace(" ", "");
OutputabcABC123abc
إزالة متسلسل فرعي من سلسلة في جافا
يمكنك إزالة فقط أول حالة لحرف أو متسلسل فرعي من سلسلة في جافا باستخدام الطريقة replaceFirst()
لاستبدال الحرف أو المتسلسل الفرعي بسلسلة فارغة. يقوم الكود المثال التالي بإزالة أول حالة لـ “ab
” من السلسلة المعطاة:
String str = "abc ABC 123 abc";
String strNew = str.replaceFirst("ab", "");
Outputc ABC 123 abc
إزالة جميع الحروف الصغيرة من سلسلة في جافا
يمكنك استخدام تعبير منتظم لإزالة الحروف التي تطابق نمطًا معينًا من سلسلة في جافا باستخدام طريقة replace.All()
لاستبدال الحروف بسلسلة فارغة. يزيل الكود المثالي التالي جميع الحروف الصغيرة من السلسلة المعطاة:
String str = "abc ABC 123 abc";
String strNew = str.replaceAll("([a-z])", "");
OutputABC 123
إزالة آخر حرف من سلسلة في جافا
لا يوجد طريقة محددة لاستبدال أو إزالة الحرف الأخير من سلسلة، ولكن يمكنك استخدام طريقة String substring() لقص السلسلة. يزيل الكود المثالي التالي الحرف الأخير من السلسلة المعطاة:
String str = "abc ABC 123 abc";
String strNew = str.substring(0, str.length()-1);
Outputabc ABC 123 ab
جربها
الملف المثال التالي يعرف فئة تحتوي على جميع أمثلة الطرق المقدمة في هذا المقال ويقوم بطباعة النتائج بعد استدعاء كل طريقة على السلسلة المعطاة. يمكنك استخدام هذا الشيفرة المثالية لتجربتها بنفسك على سلاسل مختلفة باستخدام أنماط مطابقة مختلفة وقيم استبدال مختلفة.
إذا كان لديك Java مثبتًا ، يمكنك إنشاء ملف جديد يسمى JavaStringRemove.java
وإضافة الشيفرة التالية إلى الملف:
public class JavaStringRemove {
public static void main(String[] args) {
String str = "abc ABC 123 abc";
// إزالة حرف من سلسلة في Java
System.out.println("String after removing all the 'a's = "+str.replace("a", ""));
// إزالة المسافات من سلسلة في Java
System.out.println("String after removing all the spaces = "+str.replace(" ", ""));
// إزالة مقطع من سلسلة في Java
System.out.println("String after removing the first 'ab' substring = "+str.replaceFirst("ab", ""));
// إزالة جميع الحروف الصغيرة من سلسلة في Java
System.out.println("String after removing all the lowercase letters = "+str.replaceAll("([a-z])", ""));
// إزالة آخر حرف من سلسلة في Java
System.out.println("String after removing the last character = "+str.substring(0, str.length()-1));
}
}
قم بتجميع البرنامج وتشغيله:
- javac JavaStringRemove.java
- java JavaStringRemove
ستحصل على الناتج التالي:
OutputString after removing all the 'a's = bc ABC 123 bc
String after removing all the spaces = abcABC123abc
String after removing the first 'ab' substring = c ABC 123 abc
String after removing all the lowercase letters = ABC 123
String after removing the last character = abc ABC 123 ab
تعمل كل طريقة في فئة المثال JavaStringRemove
على السلسلة المعطاة. يظهر الناتج أن الأحرف المحددة في كل طريقة تمت إزالتها من السلسلة.
استنتاج
في هذا المقال تعلمت طرقًا متنوعة لإزالة الأحرف من السلاسل في لغة البرمجة جافا باستخدام أساليب من فئة String
، بما في ذلك replace()
، replaceAll()
، replaceFirst()
، و substring()
. استمر في تعلمك مع مزيد من دروس جافا.
Source:
https://www.digitalocean.com/community/tutorials/java-remove-character-string