Crash Course - Regular Expression - Regex - Lesson 5 -Testing & Matching & Replacing & Substitution

A regular expression (shortened as regex or regexp sometimes referred to as rational expression) is a sequence of characters that specifies a search pattern in text. Usually such patterns are used by string-searching algorithms for "find" or "find and replace" operations on strings, or for input validation. Regular expression techniques are developed in theoretical computer science and formal language theory.

The concept of regular expressions began in the 1950s, when the American mathematician Stephen Cole Kleene formalized the concept of a regular language. They came into common use with Unix text-processing utilities. Different syntaxes for writing regular expressions have existed since the 1980s, one being the POSIX standard and another, widely used, being the Perl syntax.

Regular expressions are used in search engines, in search and replace dialogs of word processors and text editors, in text processing utilities such as sed and AWK, and in lexical analysis. Most general-purpose programming languages support regex capabilities either natively or via libraries, including Python, C, C++, Java, Rust, OCaml, and JavaScript.

دورة مكثفة - التعابير النظامية - ريجكس - درس 5 - الاختبار و الابدال
التعبير النظامي عبارة عن سلسلة من الأحرف التي تحدد نمط البحث في النص. عادةً ما يتم استخدام هذه الأنماط بواسطة خوارزميات البحث عن السلاسل لعمليات "البحث" أو "البحث والاستبدال" على السلاسل ، أو للتحقق من صحة الإدخال. تم تطوير تقنيات التعبير العادي في علوم الكمبيوتر النظرية ونظرية اللغة الرسمية.

بدأ مفهوم التعبيرات النمطية في الخمسينيات من القرن الماضي ، عندما قام عالم الرياضيات الأمريكي ستيفن كول كلاين بإضفاء الطابع الرسمي على مفهوم اللغة العادية. لقد دخلوا في الاستخدام المشترك مع أدوات معالجة نصوص يونكس. توجد تراكيب مختلفة لكتابة التعبيرات العادية منذ الثمانينيات ، أحدها هو معيار بوسي إكس والآخر يستخدم على نطاق واسع ، وهو لغة بيرل.

تُستخدم التعبيرات العادية في محركات البحث ، وفي محاورات البحث والاستبدال الخاصة بمعالجات النصوص ومحرري النصوص ، وفي أدوات معالجة النصوص مثل سيد و واك ، وفي التحليل المعجمي. تدعم معظم لغات البرمجة ذات الأغراض العامة إمكانيات التعابير النظامية إما محليًا أو عبر المكتبات ، بما في ذلك بايثون و سي و سي بلس بلس و جافا و راست و اوكمال و جافا سكربت.