English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

تعليمات Java الأساسية

تحكم في العملية في Java

مجموعات Java Array

برمجة Java موجهة الأجسام (I)

برمجة Java موجهة الأجسام (II)

برمجة Java موجهة الأجسام (III)

معالجة الاستثناءات Java

قوائم Java List

مجموعات Java Queue (مجموعات النظام)

مجموعات Java Map

مجموعات Java Set

مدخلات/مخرجات في Java (I/O)

Reader/Writer في Java

مواضيع أخرى في Java

استخدام method split() في Java و أمثلة

طرق Java String (الخطوط)

يقوم method split() في Java بسلسلة بتقسيم السلسلة عند النمط العادي المحدد، ويعود مجموعة من الفروع.

نمط syntax لـ method split() في Java

string.split(String regex, int limit)

معاملات method split()

يمكن لـ method split() في سلسلة استخدام إثنين من المعاملات:

  • regex - تقسيم السلسلة عند هذا النمط العادي (يمكن أن يكون سلسلة)

  • limit (اختياري) - تحديد عدد الفروع المولدة

إذا لم يتم تقديم معامل limit، فإن method split() يعود بجميع الفروع المحتملة.

قيمة عودة method split()

  • يعود مجموعة من الفروع الناتجة.

ملاحظة:إذا كان النمط العادي الذي يتم تقديمه لـ method split() غير صالح، فإن method split() يرفع استثناء PatternSyntaxException.

مثال 1: حالة split() بدون معامل limit

//استيراد الأنماط لتحويل الأنماط إلى سلسلة
//للبطبع الأنماط
import java.util.Arrays;
class Main {
    public static void main(String[] args) {
        String vowels = "a::b::c::d:e";
        //تقسيم السلسلة عند "::"
        //تحديد نتيجة في مجموعة من السلاسل
        String[] result = vowels.split("::");
        //تحويل الأنماط إلى سلسلة وتطبعها
        System.out.println("result = " + Arrays.toString(result));
    }
}

نتيجة الإخراج

result = [a, b, c, d:e]

في هذا السياق، نقوم بتقسيم السلسلة عند ::. لأنه لم يتم تقديم معامل limit، فإن مجموعة النتائج تحتوي على جميع الفروع.

method split() مع معامل limit

  • إذا كان معامل limit 0 أو سالبًا، فإن method split() يعود بمجموعة تحتوي على جميع الفروع.

  • إذا كان معامل limit إيجابيًا (مثل n)، فإن method split() يعود بأكبر عدد من الفروع الناتجة n.

مثال 2: split() مع معامل الحد

// استيراد التشكيل، تحويل التشكيل إلى نص
import java.util.Arrays;
class Main {
    public static void main(String[] args) {
        String vowels = "a:bc:de:fg:h";
        // يتم تقسيم النص عند ":"
        // الحد = -2; يحتوي التشكيل على جميع النصوص الفرعية
        String[] result = vowels.split(":", -2);
        System.out.println("نتائج العودة عندما يكون الحد -2 = " + Arrays.toString(result));
        // الحد = 0; يحتوي التشكيل على جميع النصوص الفرعية
        result = vowels.split(":", 0);
        System.out.println("نتائج العودة عندما يكون الحد 0 = " + Arrays.toString(result));
        // الحد = 2; يمكن أن يحتوي التشكيل على 2 نصوص فرعية كحد أقصى
        result = vowels.split(":", 2);
        System.out.println("نتائج العودة عندما يكون الحد 2 = " + Arrays.toString(result));
        // الحد = 4; يمكن أن يحتوي التشكيل على 4 نصوص فرعية كحد أقصى
        result = vowels.split(":", 4);
        System.out.println("نتائج العودة عندما يكون الحد 4 = " + Arrays.toString(result));
        // الحد = 10; يمكن أن يحتوي التشكيل على 10 نصوص فرعية كحد أقصى
        result = vowels.split(":", 10);
        System.out.println("نتائج العودة عندما يكون الحد 10 = " + Arrays.toString(result));
    }
}

نتيجة الإخراج

نتائج العودة عندما يكون الحد -2 = [a،bc،de،fg،h]
نتائج العودة عندما يكون الحد 0 = [a،bc,de,fg،h]
نتائج العودة عندما يكون الحد 2 = [a،bc:de:fg:h]
نتائج العودة عندما يكون الحد 4 = [a،bc:de:fg:h]
نتائج العودة عندما يكون الحد 10 = [a،bc،de,fg،h]

ملاحظة: split()الطريقة تأخذ تعبير النمط العادي كمعامل أول. إذا كنت بحاجة إلى استخدام رموز خاصة مثل \،|،^،*،+،则需要对这些字符进行转义。على سبيل المثال، نحتاج إلى استخدام\\+ لقسيم +.

مثال 3: تقسيم النص عند رمز +

//استيراد الأنماط لتحويل الأنماط إلى سلسلة
//للبطبع الأنماط
import java.util.Arrays;
class Main {
    public static void main(String[] args) {
        String vowels = "a+e+f";
        //قطع النص عند "+"
        String[] result = vowels.split("\\+");
        //تحويل الأنماط إلى سلسلة وتطبعها
        System.out.println("result = " + Arrays.toString(result));
    }
}

نتيجة الإخراج

result = [a, e, f]

في هذا المكان، نستخدم \+ للقطع في +. هذا لأن + هو رمز خاص (له معنى خاص في تعبيرات النصوص)

طرق Java String (الخطوط)