جستجو برای:
  • خانه
  • دوره و کتاب
  • مقالات
    • خانواده جاوا اسکریپت
      • مقالات جاوا اسکریپت
      • مقالات ری اکت و نکست
      • هوش مصنوعی
    • خانواده فرانت
      • مقالات سی اس اس
      • مقالات اچ تی ام ال
    • محیط کار
      • سوالات استخدامی جاوا اسکریپت
      • سوالات استخدامی ری اکت
      • اصطلاحات محیط کار فرانت اند
    • مجله پرنیان
      • تصاویر دوره ها
      • نظرات دانشجویان قدیم
  • سوالات متداول
  • تماس با ما
  • خانواده پرنیان
    • چت خانه
    • دستیار هوش مصنوعی(رایگان!)
    • تایید مدارک
    • پیام یا انتقاد (ناشناس)
    • تعیین سطح زبان انگلیسی
    • پخش لایو رادیوسام
 
  • 09921632445
  • radioarsam[at]gmail.com
  • فروشگاه محصولات
  • بلاگ
  • تماس با ما
  • درباره پارسا قربانیان، موسس مدرسه پرنیان
پارسا قربانیان |گروه آموزشی پرنیان | آموزش حرفه ای طراحی سایت
  • خانه
  • دوره و کتاب
  • مقالات
    • خانواده جاوا اسکریپت
      • مقالات جاوا اسکریپت
      • مقالات ری اکت و نکست
      • هوش مصنوعی
    • خانواده فرانت
      • مقالات سی اس اس
      • مقالات اچ تی ام ال
    • محیط کار
      • سوالات استخدامی جاوا اسکریپت
      • سوالات استخدامی ری اکت
      • اصطلاحات محیط کار فرانت اند
    • مجله پرنیان
      • تصاویر دوره ها
      • نظرات دانشجویان قدیم
  • سوالات متداول
  • تماس با ما
  • خانواده پرنیان
    • چت خانه
    • دستیار هوش مصنوعی(رایگان!)
    • تایید مدارک
    • پیام یا انتقاد (ناشناس)
    • تعیین سطح زبان انگلیسی
    • پخش لایو رادیوسام
0

ورود و ثبت نام

بلاگ پرنیان

پارسا قربانیان |گروه آموزشی پرنیان | آموزش حرفه ای طراحی سایتبلاگمقالاتمقالات جاوا اسکریپتآموزش کامل Regex (Regular expression) در جاوا اسکریپت

آموزش کامل Regex (Regular expression) در جاوا اسکریپت

4 نوامبر 2024
ارسال شده توسط مدیریت
مقالات ، مقالات جاوا اسکریپت
394 بازدید
آموزش کامل Regex (Regular expression) در جاوا اسکریپت

Regex چیست و چرا باید آن را در جاوا اسکریپت یاد بگیریم؟

Regex یا Regular Expressions ابزاری قدرتمند برای جستجو و پردازش متون است که به برنامه‌نویسان امکان می‌دهد الگوهای خاصی از کاراکترها را در متون تشخیص دهند. در جاوا اسکریپت، Regex به‌ویژه برای اعتبارسنجی فرم‌ها، جستجوی کلمات خاص و جایگزینی رشته‌ها کاربرد زیادی دارد. در این مقاله، گام‌به‌گام با ساختار و نحوه استفاده از Regex در جاوا اسکریپت آشنا می‌شویم.

مبانی و سینتکس پایه Regex

برای شروع، بیایید با برخی کاراکترها و عملگرهای مهم در Regex آشنا شویم:

  • . : نمایانگر هر کاراکتری است.
    • مثال: /.a/ به دنبال هر کاراکتری می‌گردد که پس از آن حرف a آمده باشد.
  • ^ : نشان‌دهنده شروع رشته.
    • مثال: /^A/ الگوهایی را می‌یابد که با حرف A آغاز نشده‌اند.
  • $ : نمایانگر پایان رشته.
    • مثال: /t$/ الگوهایی را می‌یابد که با حرف t خاتمه یافته‌اند.
  • * : تکرار صفر یا بیشتر از کاراکتر قبل.
    • مثال: /he*/ به دنبال h و صفر یا چند حرف e می‌گردد.
  • + : تکرار یک یا بیشتر از کاراکتر قبل.
    • مثال: /he+/ به دنبال h و یک یا چند حرف e می‌گردد.
  • {n,m} : تکرار بین n تا m بار.
    • مثال: /A{1,3}/ به دنبال A بین ۱ تا ۳ بار می‌گردد.

ایجاد یک Regex ساده در جاوا اسکریپت

در جاوا اسکریپت، می‌توانید یک Regex را به دو روش ایجاد کنید:

  1. استفاده از علامت‌های /: به این صورت const regex = /pattern/;
  2. استفاده از سازنده RegExp: به این صورت const regex = new RegExp("pattern");

آیا میدانید مدرسه فرانت اند پرنیان، دوره فرانت اند از صفر تا صد را بصورت حرفه ای برگزار میکند؟

مثال‌های عملی از Regex در جاوا اسکریپت

اعتبارسنجی ایمیل

برای تشخیص الگوی ایمیل، از یک Regex استفاده می‌کنیم که ساختار کلی آدرس ایمیل را بررسی کند:

const emailRegex = /^[\w.-]+@[a-zA-Z\d.-]+\.[a-zA-Z]{2,6}$/;
const email = "example@example.com";
console.log(emailRegex.test(email)); // true

اعتبارسنجی شماره تلفن

این Regex برای بررسی شماره تلفن‌های استاندارد استفاده می‌شود:

const phoneRegex = /^\d{3}-\d{3}-\d{4}$/;
const phone = "123-456-7890";
console.log(phoneRegex.test(phone)); // true

متدهای اصلی Regex در جاوا اسکریپت

test()

متد test بررسی می‌کند که آیا یک الگو در رشته‌ای وجود دارد یا خیر:

const regex = /hello/;
console.log(regex.test("hello world")); // true

match()

متد match همه موارد مطابق با الگو را باز می‌گرداند:

const text = "I have 2 cats and 3 dogs";
const regex = /\d/g;
console.log(text.match(regex)); // ["2", "3"]

replace()

این متد امکان جایگزینی متن براساس یک الگوی خاص را فراهم می‌کند:

const text = "I love apples";
const newText = text.replace(/apples/, "bananas");
console.log(newText); // "I love bananas"

مفاهیم پیشرفته‌تر در Regex

گروه‌بندی و استفاده از پرانتزها

با استفاده از پرانتز می‌توان بخشی از الگو را گروه‌بندی کرد:

const dateRegex = /(\d{4})-(\d{2})-(\d{2})/;
const date = "2024-11-04";
const result = date.match(dateRegex);
console.log(result[1]); // 2024 (سال)
console.log(result[2]); // 11 (ماه)
console.log(result[3]); // 04 (روز)

تمرین‌های کاربردی برای Regex در جاوا اسکریپت

حذف فاصله‌های اضافه

const text = "Hello   world!  ";
const cleanedText = text.replace(/\s+/g, " ").trim();
console.log(cleanedText); // "Hello world!"

تبدیل حروف اول کلمات به حروف بزرگ

const text = "hello world";
const titleCase = text.replace(/\b\w/g, char => char.toUpperCase());
console.log(titleCase); // "Hello World"

یادگیری و استفاده از Regex در جاوا اسکریپت می‌تواند به شما کمک کند تا الگوهای متنی پیچیده را به‌راحتی جستجو و پردازش کنید. امیدواریم که این آموزش جامع، راهنمای خوبی برای استفاده بهتر از Regex باشد.

امیدواریم از این مقاله آموزش کامل Regex (Regular expression) در جاوا اسکریپت نهایت استفاده را برده باشید و آن را با دوستانتان به اشتراک بگذارید. تیم تولید محتوای مدرسه اینترنتی پرنیان این مقاله را تهیه کرده است.

اشتراک گذاری:
درباره مدیریت

شما در حال مطالعه یکی از مقالات آموزشی وبلاگ مدرسه فرانت اند پرنیان هستید. اگر برایتان مفید بود آن را با دوستانتان به اشتراک بگذارید. من پارسا قربانیان ، مدرس با سابقه برنامه نویسی و فرانت اند و اینجا مدرسه فرانت اند پرنیان، میخواهیم در یک معامله برد برد، با هم به آرزوهایمان برسیم.

نوشته های بیشتر از مدیریت
در تلگرام
کانال ما را دنبال کنید!
در اینستاگرام
ما را دنبال کنید!
در یوتوب
ما را دنبال کنید!
Created by potrace 1.14, written by Peter Selinger 2001-2017
در آپارات
ما را دنبال کنید!

مطالب زیر را حتما مطالعه کنید

Vibe Coding چیست؟ آیا آینده برنامه‌نویسی تغییر کرده است؟
Vibe Coding چیست؟ آیا آینده برنامه‌نویسی تغییر کرده است؟
MCP چیست
MCP چیست و چرا آینده برنامه‌نویسی با هوش مصنوعی را تغییر می‌دهد؟
تفاوت HTMLCollection و NodeList در جاوا اسکریپت
تفاوت HTMLCollection و NodeList در جاوا اسکریپت
State Normalization در فرانت‌اند چیست؟
State Normalization در فرانت‌اند چیست؟
حفظ روحیه برنامه نویسان در شرایط جنگی
حفظ روحیه برنامه نویسان در شرایط جنگی
خبر فوری
اطلاعیه مهم درباره شروع کلاس ها
قدیمی تر معرفی و آموزش کتابخانه TensorFlow.js
جدیدتر کتاب مبانی و مفاهیم هوش مصنوعی، نوشته پارسا قربانیان

دیدگاهتان را بنویسید لغو پاسخ

جستجو برای:
نوشته‌های تازه
  • Vibe Coding چیست؟ آیا آینده برنامه‌نویسی تغییر کرده است؟
  • MCP چیست و چرا آینده برنامه‌نویسی با هوش مصنوعی را تغییر می‌دهد؟
  • تفاوت HTMLCollection و NodeList در جاوا اسکریپت
  • State Normalization در فرانت‌اند چیست؟
  • حفظ روحیه برنامه نویسان در شرایط جنگی
دسته‌ها
دوره ها:

کلاس های درحال ثبت نام فرانت اند: 

  • دوره فرانت اند صبح از اوایل آبان
  • دوره جاوا اسکریپت و ری اکت از 31مرداد

دوره فرانت اند پرنیان

 

مدرسه فرانت اند پرنیان

گروه آموزشی پرنیان از سال 92 تاسیس شده و تاکنون ده ها دوره طراحی وب ، CMS ، سئو و بوت کمپ فرانت اند به صورت حضوری و غیر حضوری برگزار کرده است. ما در پرنیان جدیدترین و کاربردی ترین مباحث طراحی و توسعه وب ، سئو و دیجیتال مارکتینگ رو آموزش داده و راه ورود شما عزیزان به بازار کار را هموار کرده ایم.

فهرست سفارشی
  • بلاگ
  • تماس با ما
  • حساب کاربری من
  • درباره پارسا قربانیان، موسس مدرسه پرنیان
  • سبد خرید
  • فروشگاه

لوگوی مدرسه پرنیان

تمام حقوق برای مدرسه فرانت اند پرنیان محفوظ است. سیاست حفظ حریم شخصی

ورود

رمز عبور را فراموش کرده اید؟

هنوز عضو نشده اید؟ عضویت در سایت