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

طريقة splitAsStream() في نمط Java و المثال

Pattern في حزمة java.util.regex هو تمثيل تجميعي للتعبيرات النمطية.

يستقبل طريقة splitAsStream() من هذا النوع من الـ CharSequence كمعامل، والذي يمثل النص المدخل كـ String، وفي كل مرة يقوم بالتطابق، يقوم بفصل النص المحدد إلى جزء فرعي جديد، ويقوم بإرجاع النتيجة كـ Stream يحتوي على جميع الأجزاء الفرعية.

مثال

import java.util.regex.Pattern;
import java.util.stream.Stream;
public class SplitAsStreamMethodExample {
   public static void main( String args[] ) {
      //البحث عن الأرقام بالتعبير النصي
      String regex = "(\\s)(\\d)(\\s)";
      String input = " 1 Name:Radha, age:25 2 Name:Ramu, age:32" + " 3 Name:Rajeev, age:45 4 Name:Raghu, age:35" + " 5 Name:Rahman, age:30";
      //ترميم التعبير النصي
      Pattern pattern = Pattern.compile(regex);
      //تحقق من التطابق
      if(pattern.matcher(input).find())
         System.out.println("يحتوي السطر المحدد على أرقام");
      else
         System.out.println("يحتوي السطر المحدد على أرقام");
      //فصل السطر
      Stream<String> stream = pattern.splitAsStream(input);
      Object obj[] = stream.toArray();
      for(int i=0; i< obj.length; i++) {
         System.out.println(obj[i]);
      }
   }
}

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

يحتوي السطر المحدد على أرقام
الاسم:Radha،العمر:25
الاسم:Ramu،العمر:32
الاسم:Rajeev،العمر:45
الاسم:Raghu،العمر:35
الاسم:Rahman،العمر:30