ما هو Java String IndexOf ()؟
باعتبارك مطور Java، لا بد أنك واجهت الحاجة إلى العثور على موضع حرف أو سلسلة فرعية داخل سلسلة. توفر Java طريقة مدمجة تسمى IndexOf() في فئة String لمساعدتنا في هذه المهمة. تعد طريقة IndexOf() في Java جزءًا من فئة String ، أي فئة Java String IndexOf() ، والتي تُستخدم لمعالجة السلاسل. تقوم طريقة IndexOf () في Java بإرجاع موضع التواجد الأول لحرف أو سلسلة فرعية داخل سلسلة معينة. إذا لم يتم العثور على الحرف أو السلسلة الفرعية، تقوم الطريقة بإرجاع -1.// Here is the syntax of the String indexOf():
public int indexOf(int ch)
public int indexOf(int ch, int fromIndex)
public int indexOf(String str)
public int indexOf(String str, int fromIndex)
دعونا نتعمق في الطرق المختلفة التي يمكننا من خلالها استخدام طريقة `indexOf()`.
العثور على موضع الحرف في السلسلة:
لنفترض أن لدينا سلسلة "مرحبا بالعالم!" . للعثور على موضع الحرف "o" في السلسلة، يمكننا استخدام الكود التالي:public class StringIndexOfExample {
public static void main(String[] args) {
String str = "Hello, world!";
// We will use Str.indexOf here
int position = str.indexOf('o');
System.out.println("Position of 'o' in the string is: " + position);
}
}
انتاج |
موضع "o" في السلسلة هو: 4
في الكود أعلاه، أعلنا لأول مرة عن سلسلة نصية "Hello, World!" ثم استخدم طريقة IndexOf() للعثور على موضع الحرف "o" في السلسلة. أعادت الطريقة الموضع 4، وهو أول تواجد للحرف 'o' في السلسلة.
العثور على موضع الأحرف في السلسلة
فيما يلي مثال لمقتطف التعليمات البرمجية الذي يوضح كيفية استخدام طريقة IndexOf() للعثور على موضع الأحرف في سلسلة:public class StringIndexOfExample {
public static void main(String[] args) {
String str = "Hello, world!";
// We will use Str.indexOf here
int position = str.indexOf('o');
while (position >= 0) {
System.out.println("'o' found at position " + position);
position = str.indexOf('o', position + 1);
}
}
}
انتاج |
تم العثور على "o" في الموضع 4 تم العثور على "o" في الموضع 8
في الكود أعلاه، أعلنا لأول مرة عن سلسلة نصية "Hello, World!" ثم استخدم طريقة IndexOf() للعثور على موضع الحرف "o" في السلسلة. يُرجع الأسلوب IndexOf () موضع التواجد الأول للحرف في السلسلة، أو -1 إذا لم يتم العثور على الحرف. استخدمنا بعد ذلك حلقة while لمواصلة البحث عن الحرف 'o' في السلسلة عن طريق استدعاء IndexOf() مع الحرف وموضع البداية التالي كوسيطات. نكرر هذه العملية حتى يقوم مؤشر IndexOf() بإرجاع -1، مما يشير إلى عدم وجود المزيد من تكرارات الحرف في السلسلة. في هذا المثال، وجدنا أن الحرف "o" يظهر في الموضعين 4 و8 في السلسلة "Hello, World!".
العثور على موضع سلسلة فرعية في السلسلة
لنفترض أن لدينا سلسلة نصية تقول "Java هي لغة برمجة شائعة" . للعثور على موضع السلسلة الفرعية "البرمجة" في السلسلة، يمكننا استخدام الكود التالي:public class StringIndexOfExample {
public static void main(String[] args) {
String str = "Java is a popular programming language";
// We will use Str.indexOf here
int position = str.indexOf("programming");
System.out.println("Position of 'programming' in the string is: " + position);
}
}
انتاج |
موضع "البرمجة" في السلسلة هو: 18
في الكود أعلاه، أعلنا أولاً عن سلسلة "Java هي لغة برمجة شائعة" ثم استخدمنا طريقة IndexOf() للعثور على موضع السلسلة الفرعية "البرمجة" في السلسلة. أعادت الطريقة الموضع 18، وهو موضع البداية للسلسلة الفرعية "البرمجة" في السلسلة.
البحث عن كافة تكرارات الحرف أو السلسلة الفرعية في السلسلة
لنفترض أن لدينا سلسلة نصية "Java هي لغة برمجة شائعة. تُستخدم Java على نطاق واسع في تطوير الويب" . للعثور على كافة تكرارات الحرف "a" أو السلسلة الفرعية "Java" في السلسلة، يمكننا استخدام الكود التالي:public class StringIndexOfExample {
public static void main(String[] args) {
String str = "Java is a popular programming language. Java is widely used in web development.";
int position = -1;
while ((position = str.indexOf('a', position + 1)) != -1) {
System.out.println("Found 'a' at position: " + position);
}
while ((position = str.indexOf("Java", position + 1)) != -1) {
System.out.println("Found 'Java' at position: " + position);
}
}
}
انتاج |
تم العثور على "a" في الموضع: 1 تم العثور على "a" في الموضع: 3 تم العثور على "a" في الموضع: 8 تم العثور على "a" في الموضع: 15 تم العثور على "a" في الموضع: 23 تم العثور على "a" في الموضع: 31 تم العثور على " a' في الموضع: 35 تم العثور على 'a' في الموضع: 41 تم العثور على 'a' في الموضع: 43 تم العثور على 'Java' في الموضع: 0 تم العثور على 'Java' في الموضع: 40
في الكود أعلاه، أعلنا أولاً عن سلسلة "Java هي لغة برمجة شائعة. تُستخدم Java على نطاق واسع في تطوير الويب" ثم استخدمنا طريقة IndexOf() للعثور على جميع تكرارات الحرف "a" أو السلسلة الفرعية "Java" في السلسلة. لقد استخدمنا حلقة while للتكرار على كافة تكرارات الحرف أو السلسلة الفرعية حتى تقوم طريقة IndexOf() بإرجاع -1، مما يشير إلى عدم وجود المزيد من تكرارات الحرف أو السلسلة الفرعية في السلسلة.
GO TO FULL VERSION