مرکزی مواد پر جائیں
ماڈیول 7 · سبق 4 از 4کورس میں 28/32~10 min
ماڈیول اسباق (4/4)

ریجیکس کے ساتھ تقسیم کریں۔

String.prototype.split(separator) نہ صرف ایک مقررہ تار کو قبول کرتا ہے بلکہ الگ کرنے والے کے طور پر بھی ایک regex۔ یہ اسے ٹوکنائز کرنے کا ایک طاقتور ٹول بناتا ہے۔ ساختی متن

JS
'uno, due,tre  quattro'.split(/[,\s]+/);
// ["uno", "due", "tre", "quattro"]

ریجیکس /[,\s]+/ "کوما یا وائٹ اسپیس میں سے ایک یا زیادہ" سے میل کھاتا ہے: تقسیم کسی بھی کمپاؤنڈ ڈیلیمیٹر پر تقسیم۔

عام معاملات

  • قابل اجازت CSV: text.split(/\s*,\s*/) کوما کے ارد گرد خالی جگہوں کو ہینڈل کرنے کے لیے۔
  • بولی ٹوکنائزر: الفاظ نکالنے کے لیے text.split(/\s+/)۔
  • علیحدہ رکھیں: اگر ریجیکس میں کیپچرنگ گروپس ہیں، تو گروپوں کا مواد نتیجہ کی صف میں شامل ہے۔
JS
'a=1; b=2; c=3'.split(/(;)\s*/);
// ["a=1", ";", "b=2", ";", "c=3"]

() گروپ کے بغیر سیمی کالون غائب ہو جائے گا۔ (;) کے ساتھ آپ اسے رکھتے ہیں۔ نتیجے میں.

سپلٹ آپریشنز میں الگ کرنے والوں کو محفوظ کرنا

اگر آپ کیپچرنگ قوسین کے اندر اسپلٹ سیپریٹرز رکھتے ہیں، تو String.prototype.split کے آؤٹ پٹ میں الگ کرنے والوں کو خارج کرنے کے بجائے، حتمی صف میں عناصر کے طور پر شامل کیا جائے گا۔

اسے آزمائیں

ورزش#regex.m7.l4.e1
کوششیں: 0لوڈ ہو رہا ہے…

ہر قابل اجازت CSV الگ کرنے والا تلاش کریں: اس کے ارد گرد اختیاری خالی جگہوں کے ساتھ ایک کوما۔ اس طرح آپ اسے فہرست کو ٹوکنائز کرنے کے لیے تقسیم میں استعمال کر سکتے ہیں۔

ایڈیٹر لوڈ ہو رہا ہے…
اشارہ دکھائیں۔

کسی بھی اختیاری جگہ کو جذب کرنے کے لیے کوما سے پہلے اور بعد میں \\s* استعمال کریں۔

3 کوششوں کے بعد حل دستیاب ہے۔

ورزش کا جائزہ لیں۔

ورزش#regex.m7.l4.e2
کوششیں: 0لوڈ ہو رہا ہے…

ہر 'اسپیسز یا سیمی کالون' کو الگ کرنے والا (ایک یا زیادہ) تلاش کریں۔ اس طرح تقسیم متن کو الفاظ میں بدل دے گی۔

ایڈیٹر لوڈ ہو رہا ہے…
اشارہ دکھائیں۔

یکجا \\s اور ; کلاس [\\s;] میں + کوانٹیفائر کے ساتھ۔

3 کوششوں کے بعد حل دستیاب ہے۔

اضافی چیلنج

ورزش#regex.m7.l4.e3
کوششیں: 0لوڈ ہو رہا ہے…

Write a regex to use in a split that separates numbers while keeping math operators `+`, `-`, `*`, `/` as elements of the array.

ایڈیٹر لوڈ ہو رہا ہے…
اشارہ دکھائیں۔

Enclose the math operators character class in capture parentheses to preserve them in the split array.

3 کوششوں کے بعد حل دستیاب ہے۔