شبيبة تعليمي

شبيبة المنزل مقدمة شبيبة شبيبة إلى أين إخراج JS بيانات شبيبة بناء جملة JS تعليقات JS متغيرات JS JS Let شبيبة كونست مشغلي JS شبيبة الحساب احالة JS أنواع بيانات JS وظائف JS كائنات JS أحداث شبيبة سلاسل شبيبة طرق سلسلة JS بحث سلسلة JS JS String Templates أرقام شبيبة طرق عدد JS صفيفات JS طرق صفيف JS ترتيب صفيف JS تكرار صفيف JS JS Array Const تواريخ شبيبة تنسيقات التاريخ JS طرق الحصول على تاريخ JS طرق تعيين تاريخ JS شبيبة الرياضيات شبيبة عشوائية شبيبة منطقية مقارنات شبيبة شروط JS مفتاح JS JS Loop For JS Loop For In. شبيبة حلقة JS لـ Of شبيبة حلقة بينما شبيبة استراحة شبيبة تكرارات مجموعات JS خرائط شبيبة شبيبة تايبوف JS نوع التحويل شبيبة Bitwise JS RegExp أخطاء JS شبيبة النطاق رفع JS وضع JS الصارم شبيبة هذه الكلمة دالة سهم JS فئات JS شبيبة شبيبة تصحيح أخطاء JS دليل أسلوب JS أفضل ممارسات JS أخطاء JS أداء JS شبيبة الكلمات المحجوزة

إصدارات JS

إصدارات JS JS 2009 (ES5) شبيبة 2015 (ES6) شبيبة 2016 شبيبة 2017 شبيبة 2018 شبيبة آي إي / إيدج تاريخ شبيبة

كائنات JS

تعريفات الكائن خصائص الموضوع طرق الكائن عرض الكائن موصلي الكائنات منشئو الكائنات نماذج الكائن كائن تكرارات مجموعات الكائن خرائط الكائن مرجع الكائن

وظائف JS

تعريفات الوظائف معلمات الوظيفة استدعاء الوظيفة استدعاء الوظيفة تطبيق الوظيفة عمليات إغلاق الوظائف

فئات JS

مقدمة عن الفصل الوراثة الطبقية فئة ثابتة

شبيبة آسينك

عمليات الاسترجاعات JS شبيبة غير متزامن وعود شبيبة شبيبة Async / انتظار

JS HTML DOM

مقدمة DOM طرق DOM مستند DOM عناصر DOM DOM HTML نماذج DOM DOM CSS الرسوم المتحركة DOM أحداث DOM مستمع أحداث DOM التنقل في DOM عقد DOM مجموعات DOM قوائم عقدة DOM

متصفح JS BOM

نافذة JS شاشة JS موقع JS تاريخ شبيبة شبيبة ملاح تنبيه منبثق لـ JS توقيت شبيبة ملفات تعريف الارتباط JS

JS Web APIs

مقدمة واجهة برمجة تطبيقات الويب واجهة برمجة تطبيقات نماذج الويب واجهة برمجة تطبيقات سجل الويب واجهة برمجة تطبيقات تخزين الويب Web Worker API واجهة برمجة تطبيقات جلب الويب واجهة برمجة تطبيقات تحديد الموقع الجغرافي على الويب

شبيبة أجاكس

مقدمة أجاكس أجاكس XMLHttp طلب AJAX استجابة AJAX ملف AJAX XML أجاكس بي إتش بي أجاكس آسيا والمحيط الهادئ قاعدة بيانات أجاكس تطبيقات أجاكس أمثلة AJAX

شبيبة شبيبة

مقدمة JSON بناء جملة JSON JSON مقابل XML أنواع بيانات JSON تحليل JSON تنسيق JSON كائنات JSON صفائف JSON خادم JSON JSON PHP JSON HTML جسون جسونب

JS مقابل jQuery

محددات jQuery jQuery HTML jQuery CSS jQuery DOM

شبيبة الرسومات

شبيبة الرسومات قماش شبيبة شبيبة بلوتلي JS Chart.js مخطط جوجل JS شبيبة D3.js

أمثلة JS

أمثلة JS JS HTML DOM إدخال JS HTML كائنات JS HTML أحداث HTML متصفح JS محرر JS تمارين شبيبة شبيبة مسابقة شهادة JS

مراجع JS

كائنات جافا سكريبت كائنات HTML DOM


تعبيرات جافا سكريبت العادية


التعبير العادي هو سلسلة من الأحرف التي تشكل نمط بحث.

يمكن استخدام نمط البحث للبحث عن النص وعمليات استبدال النص.


ما هو التعبير العادي؟

التعبير العادي هو سلسلة من الأحرف التي تشكل نمط بحث .

عندما تبحث عن بيانات في نص ، يمكنك استخدام نمط البحث هذا لوصف ما تبحث عنه.

يمكن أن يكون التعبير العادي حرفًا واحدًا أو نمطًا أكثر تعقيدًا.

يمكن استخدام التعبيرات العادية لإجراء جميع أنواع عمليات البحث عن النص واستبدال النص .

بناء الجملة

/pattern/modifiers;

مثال

/w3schools/i;

شرح المثال:

/ w3schools / i   هو تعبير عادي.

w3schools   هو نمط (يستخدم في البحث).

i   هو معدل (يعدل البحث ليكون غير حساس لحالة الأحرف).


باستخدام طرق السلسلة

في JavaScript ، غالبًا ما تُستخدم التعبيرات العادية مع طريقتي السلسلة : search()و replace().

تستخدم search()الطريقة تعبيرًا للبحث عن تطابق ، وتقوم بإرجاع موضع التطابق.

تقوم replace()الطريقة بإرجاع سلسلة معدلة حيث يتم استبدال النمط.


باستخدام بحث سلسلة () بسلسلة

تبحث الطريقة search()في سلسلة لقيمة محددة وتعيد موضع المطابقة:

مثال

استخدم سلسلة للبحث عن "W3schools" في سلسلة:

let text = "Visit W3Schools!";
let n = text.search("W3Schools");

ستكون النتيجة في n :

6


استخدام بحث سلسلة () مع تعبير عادي

مثال

استخدم تعبيرًا عاديًا لإجراء بحث حساس لحالة الأحرف عن "w3schools" في سلسلة:

let text = "Visit W3Schools";
let n = text.search(/w3schools/i);

ستكون النتيجة في n :

6



باستخدام String ، replace () مع سلسلة

يستبدل الأسلوب replace()قيمة محددة بقيمة أخرى في سلسلة:

let text = "Visit Microsoft!";
let result = text.replace("Microsoft", "W3Schools");

استخدم String replace () بتعبير عادي

مثال

استخدم تعبيرًا عاديًا غير حساس لحالة الأحرف لاستبدال Microsoft بـ W3Schools في سلسلة:

let text = "Visit Microsoft!";
let result = text.replace(/microsoft/i, "W3Schools");

ستكون النتيجة في الدقة :

Visit W3Schools!

هل لاحظت؟

يمكن استخدام وسيطات التعبير العادي (بدلاً من وسيطات السلسلة) في الطرق أعلاه.
يمكن أن تجعل التعبيرات العادية بحثك أكثر قوة (على سبيل المثال غير حساس لحالة الأحرف).


معدِّلات التعبير العادي

يمكن استخدام المُعدِّلات لإجراء المزيد من عمليات البحث الشاملة غير الحساسة لحالة الأحرف:

Modifier Description Try it
i Perform case-insensitive matching
g Perform a global match (find all matches rather than stopping after the first match)
m Perform multiline matching

أنماط التعبير العادي

تستخدم الأقواس للبحث عن مجموعة من الأحرف:

Expression Description Try it
[abc] Find any of the characters between the brackets
[0-9] Find any of the digits between the brackets
(x|y) Find any of the alternatives separated with |

الحروف الأولية هي أحرف لها معنى خاص:

Metacharacter Description Try it
\d Find a digit
\s Find a whitespace character
\b Find a match at the beginning of a word like this: \bWORD, or at the end of a word like this: WORD\b
\uxxxx Find the Unicode character specified by the hexadecimal number xxxx

محددات الكميات تحدد الكميات:

Quantifier Description Try it
n+ Matches any string that contains at least one n
n* Matches any string that contains zero or more occurrences of n
n? Matches any string that contains zero or one occurrences of n

استخدام كائن RegExp

في JavaScript ، كائن RegExp هو كائن تعبير عادي بخصائص وطرق محددة مسبقًا.


باستخدام الاختبار ()

الطريقة test()هي طريقة تعبير RegExp.

يبحث في سلسلة عن نمط ، ويعيد صح أو خطأ ، اعتمادًا على النتيجة.

يبحث المثال التالي عن سلسلة للحرف "e":

مثال

const pattern = /e/;
pattern.test("The best things in life are free!");

نظرًا لوجود حرف "e" في السلسلة ، سيكون ناتج الشفرة أعلاه:

true

لا يتعين عليك وضع التعبير النمطي في متغير أولاً. يمكن اختصار السطرين أعلاه إلى سطر واحد:

/e/.test("The best things in life are free!");

باستخدام exec ()

الطريقة exec()هي طريقة تعبير RegExp.

يبحث في سلسلة عن نمط محدد ، ويعيد النص الموجود ككائن.

إذا لم يتم العثور على تطابق ، فإنه يقوم بإرجاع كائن فارغ (فارغ) .

يبحث المثال التالي عن سلسلة للحرف "e":

مثال

/e/.exec("The best things in life are free!");

مرجع RegExp الكامل

للحصول على مرجع كامل ، انتقل إلى مرجع JavaScript RegExp الكامل .

يحتوي المرجع على أوصاف وأمثلة لجميع خصائص وطرق RegExp.