RegExp Meta Characters

در عبارات منظم (RegExp) بعضی کاراکترها معنی خاص دارن و بهشون Meta Characters گفته میشه.
این‌ها ابزار اصلی برای ساخت الگوهای پیچیده و حرفه‌ای هستن.

🔹 مهم‌ترین Meta Characters

1. . → هر کاراکتر (به جز خط‌جدید)

let text = "cat bat"; console.log(text.match(/c.t/g));

📌 خروجی:

["cat"]

2. \ → فرار دادن (Escape)

برای استفاده از کاراکترهای خاص به صورت معمولی باید از \ استفاده کنیم.

let text = "1+1=2"; console.log(text.match(/\+/g));

📌 خروجی:

["+"]

3. ^ → شروع رشته

let text = "JavaScript"; console.log(/^Java/.test(text));

📌 خروجی:

true

4. $ → پایان رشته

let text = "Hello World"; console.log(/World$/.test(text));

📌 خروجی:

true

5. | → یا (OR)

let text = "I like cats"; console.log(/cats|dogs/.test(text));

📌 خروجی:

true

6. [] → مجموعه کاراکترها

let text = "bat"; console.log(text.match(/[bc]at/));

📌 خروجی:

["bat"]

7. [^ ] → نفی مجموعه کاراکترها

let text = "cat"; console.log(text.match(/[^0-9]/g));

📌 خروجی:

["c","a","t"]

8. () → گروه‌بندی

let text = "abcabc"; console.log(text.match(/(abc)+/g));

📌 خروجی:

["abcabc"]

9. {} → تعداد تکرار

let text = "hellooo"; console.log(text.match(/o{2,}/g));

📌 خروجی:

["ooo"]

10. ? → صفر یا یک بار تکرار

let text = "color colour"; console.log(text.match(/colou?r/g));

📌 خروجی:

["color","colour"]

11. * → صفر یا چند بار تکرار

let text = "woooow"; console.log(text.match(/wo*/g));

📌 خروجی:

["woooow"]

12. + → یک یا چند بار تکرار

let text = "123"; console.log(text.match(/\d+/g));

📌 خروجی:

["123"]

✅ خلاصه

  • . → هر کاراکتر

  • ^ $ → شروع و پایان

  • | → یا

  • [] → مجموعه کاراکترها

  • () → گروه‌بندی

  • {}, ?, *, + → تعیین تعداد تکرار

  • \ → برای فرار دادن کاراکترهای خاص