জাভাস্ক্রিপ্টে রেগুলার এক্সপ্রেশনে lastIndex প্রোপার্টি
রেগুলার এক্সপ্রেশনের একটি প্রোপার্টি আছে
lastIndex। এটিতে সেই পজিশনটি সংরক্ষিত থাকে,
যেখান থেকে পরবর্তীতে exec মেথডটি
অনুসন্ধান শুরু করবে।
অর্থাৎ, মেথডটির প্রতিটি নতুন কলের সাথে
এই প্রোপার্টির মান পরিবর্তিত হবে।
আসুন একটি উদাহরণ দেখি:
let str = '12 34 56';
let reg = /\d+/g;
console.log(reg.lastIndex); // প্রারম্ভিক মান 0
let res;
while (res = reg.exec(str)) {
console.log(res); // [12], [34], [56]
console.log(reg.lastIndex); // 2, 5, 8
}
lastIndex-এর সুবিধা হল
যে, এটিকে কেবল পড়াই নয়, বরং
পরিবর্তনও করা যায়, একটি নির্দিষ্ট
পজিশন থেকে অনুসন্ধান শুরু করার জন্য। উদাহরণ দেখুন:
let str = '12 34 56';
let reg = /\d+/g;
reg.lastIndex = 2;
let res = reg.exec(str)
console.log(res); // [34]
নিচের স্ট্রিংটি দেওয়া আছে:
let str = '12:37 15:48 17:59';
পঞ্চম ক্যারেক্টার থেকে শুরু করে এতে সমস্ত টাইমের সাবস্ট্রিং খুঁজে বের করুন।