split()
می خواهی «تقسیم رشته با جداکننده» انجام دهی؟ متد split() رشته متنی را با یک «عبارت باقاعده (Regular Expression)» تکه تکه می کند و یک آرایه می دهد.
split چیست و چه می دهد؟
متد split() با الگوی regex رشته را می بُرد و یک «آرایه رشته ای (String[])» برمی گرداند. رشته اصلی دست نخورده می ماند.
امضاهای متد (Syntax)
public String[] split(String regex, int limit);
public String[] split(String regex);
مثال 1: جداکردن با فاصله و علائم نگارشی
در این مثال، با الگوی [,\.\s] بر اساس ویرگول، نقطه، و فاصله جدا می کنیم.
public class Main {
public static void main(String[] args) {
String myStr = "Split a string by spaces, and also punctuation.";
String regex = "[,\\.\\s]";
String[] myArray = myStr.split(regex);
for (String s : myArray) {
System.out.println(s);
}
}
}
مثال 2: استفاده از limit
با limit طول آرایه را محدود کن. آخرین خانه می تواند باقیمانده را نگه دارد.
public class Main {
public static void main(String[] args) {
String text = "a,b,c,d";
String[] parts = text.split(",", 3);
for (String p : parts) {
System.out.println(p);
}
}
}
پارامترها
- regex: الگوی جداکننده ها؛ باید یک عبارت باقاعده باشد.
- limit: حداکثر طول آرایه؛ اختیاری است.
نکته: اگر الگو پیچیده باشد، ساده ترش کن تا خطا نگیری.
گام های عملی سریع
- رشته ورودی را تعیین کن.
- الگوی regex را مشخص کن.
- در صورت نیاز، limit را بده.
- حلقه بزن و تکه ها را پردازش کن.
خطاها و نکات مهم
- الگوی نامعتبر، PatternSyntaxException می دهد.
- برای جابجایی متن، از replaceAll() کمک بگیر.
- برای مقایسه الگو، matches() را ببین.
مطالعه بیشتر
تقسیم رشته با جداکننده؛ راهنمای کامل همین صفحه. آموزش الگوها: Java RegEx. مرجع متد: W3Schools: split().
جمع بندی سریع
- split رشته را به آرایه تبدیل می کند.
- regex تعیین کننده مرزهاست.
- limit طول خروجی را محدود می کند.
- الگوی غلط خطا می دهد.