نتائج البحث

اذهب إلى التنقل اذهب إلى البحث

المكرِّرات Iterators في بايثون

لعلّك لاحظت أن بالإمكان المرور على عناصر معظم الكائنات الحاوية (container objects) (مثل القوائم والقواميس والسلاسل النصية وغيرها...) باستخدام عبارة for: for element in [1, 2, 3]:     print(element) for element in (1, 2, 3):     print(element) for key in {'one':1, 'two':2}:     print(key) for char in "123":     print(char) for line in open("myfile.txt"):     print(line, end='') تستدعي عبارة for خلف الكواليس الدالة iter()‎ على الكائن الحاوي، فتعيد الدالة كائن تكرار (iterator object) يعرّف التابع ‎__next__‎()‎ الذي يستطيع الوصول إلى عنصر واحد في الكائن الحاوي ...

مُعدِّلات النمط Pattern Modifiers‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎

فيما يلي مُعدِّلات PCRE الحالية الممكنة. وتشير الأسماء الموجودة بين قوسين إلى أسماء PCRE الداخلية لها. وتُتَجاهل المسافات والسطور الجديدة في المعدّلات، بينما تتسبب الأحرف الأخرى في حدوث خطأ. i (PCRE_CASELESS)‎ إذا ضُبِط هذا المُعدِّل، تتطابق الحروف في النمط مع الحروف الكبيرة والصغيرة. m (PCRE_MULTILINE)‎ تعامل PCRE سلسلةَ الهدف افتراضيًا كما لو كانت مكونة من "سطر" واحد من الحروف (حتى إذا كان يحتوي بالفعل على عدة سطور جديدة). ويتطابق الحرف الخاص "بداية السطر" ورمزه ^ فقط في بداية السلسلة النصية، ...

الربط بين الجداول

تخزن البيانات عادةً في قواعد البيانات بأكثر من جدول لتسهيل تنظيمها وإدارتها، وتُربط هذه الجداول فيما بينها من خلال الأعمدة المترابطة فيما بينها، وذلك بالاعتماد على مفهومي المفتاح الأولي Primary Key والمفتاح الثانوي Foreign Key، وله عدة أنواع ستُذكر تباعًا. أنواع ربط الجداول توجد عدة أنواع للربط بين جدولين (أو أكثر)، إذ يسمى الجدول الأول يساريًا والجدول الثاني يمينًا: الربط الداخلي INNER JOIN: تحديد بعض السجلات من الجدول اليساري والجدول اليميني بحيث تحقق شرط الربط. الربط اليساري LEFT JOIN: تحديد ...

الدالة iter()‎ في بايثون

تعيد الدّالة iter()‎ مُكرّرًا حسب المُعاملات المُعطاة. البنية العامة iter(object[, sentinel]) المعاملات object إن لم يكن المُعامل الثّاني sentinel حاضرًا، فلا بدّ لهذا المُعامل أن يكون كائنًا يدعم بروتوكول التّكرار (أي أنّ صنفه يُعرّف التّابع الخاصّ ‎_‎_‎iter‎_‎_‎(‎)‎)، أو يجب أن يدعم بروتوكول التّسلسلات (sequence protocol) الذي يُعرّف صنفه التّابع الخاصّ ‎_‎_‎getitem‎_‎_‎(‎)‎ مع مُعاملات تكون أعدادًا صحيحةً وتبدأ من الصّفر. وإن لم يدعم الكائن أيًّا من هذين البروتوكولين، فسيُطلق الاستثناء TypeError. sentinel مُعامل اختيّاريّ. إن مُرّرت قيمة لهذا المُعامل، فلا بدّ ...

PHP Object Iteration

يقدّم الإصدار الخامس من اللغة طريقة لتعريف العناصر ليكون بالإمكان المرور على قائمة من العناصر باستخدام العبارة foreach على سبيل المثال، وتستخدم جميع الخصائص المرئية بصورة افتراضية لعملية المرور على العناصر. المثال 1: مثال بسيط على المرور على عناصر الكائن <?php class MyClass { public $var1 = 'value 1'; public $var2 = 'value 2'; public $var3 = 'value 3'; protected $protected = 'protected var'; private ...

الدالة ‎‎iterator()‎ في Kotlin

تسمح الدالة iterator()‎ بالتكرار (iterate) على كائنٍ ديناميكيّ (dynamic) في الحالات الآتية: إن كان لديه دالة تكراريّة (iterator function). إن كان مصفوفةً (array). إن كان نسخةً (instance) من Kotlin.collections.Iterable. البنية العامة operator fun dynamic.iterator(): Iterator<dynamic> بيئة التشغيل المطلوبة: JS. ويُلاحظ وجود الكلمة المفتاحيّة operator للدلالة على أنّ هذه الدالة مرتبطٌ بمعامل التكرار (iteration operator). انظر أيضًا الدالة ()asDynamic: تعيد قيمة الكائن الذي استدعيت عبره على شكل قيمةٍ من النوع الديناميكيّ (dynamic type). مصادر صفحة الدالة iterator()‎ في التوثيق الرسميّ للمكتبة القياسيّة ...

الدالة ‎‎iterator()‎ في Kotlin

تسمح الدالة iterator()‎ بالتكرار (iterate) على كائنٍ ديناميكيّ (dynamic) في الحالات الآتية: إن كان لديه دالة تكراريّة (iterator function). إن كان مصفوفةً (array). إن كان نسخةً (instance) من Kotlin.collections.Iterable. البنية العامة operator fun dynamic.iterator(): Iterator<dynamic> بيئة التشغيل المطلوبة: JS. ويُلاحظ وجود الكلمة المفتاحيّة operator للدلالة على أنّ هذه الدالة مرتبطٌ بمعامل التكرار (iteration operator). انظر أيضًا الدالة ()asDynamic: تعيد قيمة الكائن الذي استدعيت عبره على شكل قيمةٍ من النوع الديناميكيّ (dynamic type). مصادر صفحة الدالة iterator()‎ في التوثيق الرسميّ للمكتبة القياسيّة ...

PHP Object Iteration

يقدّم الإصدار الخامس من اللغة طريقة لتعريف العناصر ليكون بالإمكان المرور على قائمة من العناصر باستخدام العبارة foreach على سبيل المثال، وتستخدم جميع الخصائص المرئية بصورة افتراضية لعملية المرور على العناصر. المثال 1: مثال بسيط على المرور على عناصر الكائن <?php class MyClass { public $var1 = 'value 1'; public $var2 = 'value 2'; public $var3 = 'value 3'; protected $protected = 'protected var'; private ...

المكررات والمولدات في TypeScript

الكائنات القابلة للتكرار (Iterables) يُعدّ كائنٌ قابلًا للتكرار إذا كان يطبِّق الخاصيّة ‎Symbol.iterator‎. هناك بعض الأنواع القابلة للتكرار المضمّنة في اللغة مثل ‎Array‎، و‎Map‎، و‎Set‎، و‎String‎، و‎Int32Array‎، و‎Uint32Array‎، إلخ… تُطبِّق هذه الأنواع الخاصية ‎Symbol.iterator‎ داخليًّا. تكون الدالةُ ‎Symbol.iterator‎ على كائنٍ معيّنٍ الدالةَ المسؤولةَ عن إعادة قائمة القيم التي يُكرَّر عليها. جمل ‎for..of‎ تدور الجملة ‎ for..of‎‎حول كائن قابل للتكرار مُستدعيَةً الخاصيّة ‎Symbol.iterator‎ الموجودة على الكائن. هذا مثال بسيط على كيفيّة استخدام ‎for..of‎ للدوران على عناصر مصفوفة: let someArray = [1, ...

الوسيط (Middle Man)

توصيف المشكلة عندما يكون للصنف (class) مهمةٌ واحدةٌ فقط وهي تفويض المهام (delegation) لصنفٍ آخر، فما أهمية وجوده بالأصل؟ أسبابها قد تنتج المشكلة عن التخلُّص المفرط من الاستدعاءات المتسلسلة كعلاجٍ لمشكلة سلاسل الرسائل (message chains). أو قد تنتُج عن النقل التدريجيّ للصنف (class) إلى أصناف أخرى ليبقى الصنف الأصليّ فارغًا إلا من أوامر التفويض (delegation). وما الحل؟ حذف الوسيط (remove middle man) إن كانت معظم أصناف التابع (method's classes) تفوِّض المهام (delegate) إلى صنفٍ آخر. إليك المزيد ستحصل بحلِّ المشكلة ...

الخاصية animation-iteration-count

الخاصية animation-iteration-count في CSS تُحدِّد عدد مرات تكرار دورة الحركة حتى توقف الحركة، وإذا حُدِّدت أكثر من قيمة فسيتم استخدام القيمة التي تلي القيمة التي طُبِّقَت سابقًا عند إعادة تشغيل الحركة، إلى أن نعود إلى القيمة الأولى بعد استخدام آخر قيمة. بطاقة الخاصية القيمة الابتدائية 1 تُطبَّق على جميع العناصر. قابلة للوراثة لا قابلة للتحريك لا القيمة المحسوبة كما حُدِّدَت. من الشائع استخدام الخاصية المختصرة animation لضبط جميع خاصيات الحركات بآنٍ واحد. /* قيمة واحدة */ animation-iteration-count: infinite; animation-iteration-count: 3; animation-iteration-count: 2.3; /* عدِّة ...

الدالة re.finditer()‎ في بايثون‎

تعيد الدالة كائنًا قابلًا للتكرار iterator ينتج عنه كائنات match لجميع حالات التطابق غير المتداخلة والناتجة من تطبيق التعبير النمطي المعطى على السلسلة النصية المعطاة. البنية العامة re.finditer(pattern, string, flags=0) المعاملات pattern التعبير النمطي المستخدم لإجراء عملية المطابقة. string السلسلة النصية التي ستبحث فيها الدالة عن حالات التطابق. flags الرايات المستخدمة لضبط عملية البحث. يأخذ هذا المعامل القيمة 0 كقيمة افتراضية. راجع قسم المعاملات في توثيق الدالة ()re.compile للمزيد من المعلومات. القيمة المعادة تعيد الدالة كائنًا قابلًا للتكرار iterator ينتج ...

مفاتيح الجداول

تستخدم المفاتيح بهدف الربط ما بين الجداول في قواعد البيانات. المفتاح الأوليّ PRIMARY KEY هو عمود (أو أكثر) من الجدول والذي يميّز السجلات عن بعضها، تكون القيم فيه فريدة (غير مكررة) ولا يمكن ألّا يحتوي قيمة (قيمته NULL)، ويكون للجدول مفتاح أولي وحيد. المفتاح الثانويّ FOREIGN KEY هو عمود (أو أكثر) من الجدول والذي يمكن عدّه مرجعيةً (reference) لعمود آخر في جدول ثانٍ (وغالبًا ما يكون هذا العمود هو المفتاح الأولي للجدول الثاني). مثال تحتوي قاعدة بيانات أحد المراكز التعليمية ...

المعامل EXISTS

يستخدم المعامل EXISTS للتأكد من وجود سجلات ناتجة عن الاستعلام الفرعي المستخدم في الاستعلام الرئيسي. مثال إن كان في قاعدة البيانات الجدولان الآتيان: الجدول الأول: جدول الطلاب students RegDate CourseID LastName FirstName StudentID ‎07-JUL-2017‎ 0206 Najjar Rama 1147 ‎08-NOV-2017‎ 0604 Kordi Jenan 1148 ‎07-JUL-2017 0206 Bitar Rahaf 1149 ‎20-AUG-2017 0607 Taweel Farah 1150 ‎08-NOV-2017 0610 Arab Rami 1151 ‎24-OCT-2017 0803 Akkad Aya 1152 ‎08-NOV-2017 0504 Haddad Abed 1153 ‎20-AUG-2017 0801 Fares Tasneem 1154 ‎24-OCT-2017 0607 Hamsho Monther 1155 ‎30-SEP-2017 0607 ...

استخدام التعليمة Switch

توصيف المشكلة وجود تركيبٍ معقَّدٍ لتعليمة switch أو عدّة تعليمات if متسلسلة. أسبابها ما يميِّز البرمجة كائنيّة التوجّه (OO) هو اعتمادها النادر على المعاملين switch و case، إذ تُوزَّع شيفرة switch بمواقع مختلفة من البرنامج بدلًا من تجمعيها في تعليمة switch واحدةٍ، وعند إضافة شرطٍ جديدٍ عليك إيجاد كافّة شيفرات switch لتعديلها، وكقاعدة عامّة: وجود تعليمة switch يعني أن عليك البدء بالتفكير بمبدأ التعدديّة الشكليّة (polymorphism). وما الحل؟ عزل تعليمة switch ووضعها بالصنف الصحيح عبر إنشاء صنفٍ (class) ونقل التابع ...

الربط اليساري LEFT JOIN

يُستخدم هذا النوع من الربط ما بين جدولين (أو أكثر) وذلك لتحديد كافة السجلات من الجدول اليساري وبعض السجلات من الجدول اليميني التي تحقق شرط الربط، وتكون له البنية العامّة الآتية: SELECT col_names FROM tbl_name1 LEFT [OUTER] JOIN tbl_name2 ON col_name1 = col_name2 مثال إن كانت قاعدة بيانات أحد المراكز التعليمية تحتوي على الجداول الآتية: الجدول الأول: جدول الطلاب students (المفتاح الأولي فيه هو عمود StudentID والمفتاح الثانوي هو عمود CourseID للربط مع جدول الدورات التدريبية) RegDate CourseID LastName FirstName StudentID ...

الربط الداخلي INNER JOIN

يُستخدم هذا النوع من الربط ما بين جدولين (أو أكثر) وذلك لتحديد بعض السجلات من الجدول اليساري والجدول اليميني بحيث تحقق شرط الربط، وتكون له البنية العامّة الآتية: SELECT col_names FROM tbl_name1 [INNER] JOIN tbl_name2 ON col_name1 = col_name2 وكما يُلاحظ أن وجود كلمة INNER اختياريّ لأن الربط الداخلي هو الحالة الافتراضية في الربط. مثال إن كانت قاعدة بيانات أحد المراكز التعليمية تحتوي على الجداول الآتية: الجدول الأول: جدول الطلاب students (المفتاح الأولي فيه هو عمود StudentID والمفتاح الثانوي هو عمود CourseID ...

الدالة re.findall()‎ في بايثون‎

تعيد الدالة جميع حالات التطابق غير المتداخلة للنمط المطبق على السلسلة النصية المعطاة على هيئة قائمة من السلاسل النصية. البنية العامة re.findall(pattern, string, flags=0) المعاملات pattern التعبير النمطي المستخدم لإجراء عملية المطابقة. string السلسلة النصية التي ستبحث فيها الدالة عن حالات التطابق. flags الرايات المستخدمة لضبط عملية البحث. يأخذ هذا المعامل القيمة 0 كقيمة افتراضية. راجع قسم المعاملات في توثيق الدالة ()re.compile للمزيد من المعلومات. القيمة المعادة تعيد الدالة جميع حالات التطابق غير المتداخلة للنمط المطبق على السلسلة النصية المعطاة ...

التابع ‎iterator?‎‎ الخاص بالصنف Kernel في روبي

يتحقق التابع iterator?‎ إذا كان yield سينفذ كتلة برمجية في السياق الراهن. لقد أصبح الشكل ‎iterator?‎ مهملًا إلى حد ما. البنية العامة iterator?→ true or false‎ القيمة المعادة تعاد القيمة true إذا كان yield سينفذ كتلة برمجية في السياق الراهن. وإلا فستعاد false. أمثلة مثال على استخدام التابع iterator?‎: def try if block_given? yield else "no block" end end try ...

توحيد الأجزاء الشرطية المكررة (Consolidate Duplicate Conditional Fragments)

المشكلة شيفرة برمجية متطابقة موجودة في جميع فروع الشَرطيات. الحل نقل الشيفرة البرمجية خارج الشَرطية. مثال قبل إعادة التصميم استدعاء وتنفيذ الدالة ()send في نهاية جميع فروع الكتلة if الشرطية سواءً أكان الشرط محققًا أم لا: في لغة Java: if (isSpecialDeal()) { total = price * 0.95; send(); } else { total = price * 0.98; send(); } في لغة C#‎: if (IsSpecialDeal()) { total = price * 0.95; Send(); } else { total = price * 0.98; ...

الدالة Regex.toPattern()‎ في Kotlin

تحول الدالة toPattern()‎ كائنًا من النوع Regex (تعبيرًا نمطيًا) إلى النوع Pattern (نمط). بناءً على ذلك، توفر هذه الدالة وسيلة لاستعمال الكائن Regex في المكان الذي يطلب فيه استعمال الكائن Pattern. البنية العامة fun toPattern(): Pattern المنصة المطلوبة: JVM. القيمة المعادة تعاد نسخةٌ من الصنف Pattern لها نفس السلسلة النصية النمطية (pattern string) والخيارات التي يملكها التعبير النمطي المعطى. أمثلة ينشِئ التابع Regex()‎ في الشيفرة التالية تعبيرًا نمطيًا باسم reg لمطابقة القيم العددية، ثم يُستدعَى معه الدالة toPattern()‎ لتحويل ذلك التعبير النمطي إلى النمط Pattern: fun main(args: Array<String>) ...

التابع Symbol.match?‎‎ في روبي

يعيد التابع match?‎ ناتج التعبير sym.to_s.match?‎. البنية العامة match?(pattern) → true or false match?(pattern, pos)→ true or false‎ المعاملات pattern النمط المراد التحقق من مطابقته للرمز المعطى. القيمة المعادة تعاد القيمة true إن طابق النمط pattern الرمز المعطى. خلا ذلك، تعاد القيمة false. انظر أيضا التابع match: يعيد ناتج التعبير sym.to_s.match. مصادر قسم التابع match?‎ في الصنف Symbol‎ في توثيق روبي الرسمي.

التابع File.fnmatch في روبي

يتحقق التابع fnmatch من تطابق مسار مع نمط محدَّد. هذا النمط ليس تعبيرًا نظاميًّا بل يتبع قواعد مشابهة لتعميم أسماء الملفات في الصدفة. البنية العامة fnmatch( pattern, path, [flags] ) → (true or false) fnmatch?( pattern, path, [flags] ) → (true or false) المعاملات pattern النمط المراد منه مطابقة المسار path المعطى. يمكن أن يحتوي على المحارف الخاصَّة (metacharacters، أو تدعى محارف الصدفة أيضًا) التالية: المحرف الخاص الوصف * يطابق أي ملف. يمكن أن يُقيَّد بقيم أخرى في النطاق العام (glob). هذا ...

الدالة preg_match_all()‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎ في PHP

(PHP 4, PHP 5, PHP 7) تطابق الدالة preg_match_all()‎‎ تعبيرًا نمطيًا بشكل شامل. الوصف int preg_match_all ( string $pattern , string $subject [, array &$matches [, int $flags = PREG_PATTERN_ORDER [, int $offset = 0 ]]] ) تبحث هذه الدالة في الموضوع subject عن جميع المتطابقات للتعبير النمطي المُعطى pattern وتضعهم في المصفوفة matches بالترتيب المحدد بواسطة flags. بعد العثور على أول متطابقة، ستستمر عمليات البحث التالية من نهاية المتطابقة الأخيرة. المعاملات pattern النمط المراد البحث عنه، كسلسلة نصية. subject السلسلة ...

التابع File.fnmatch?‎ في روبي

يتحقق التابع fnmatch?‎ من تطابق مسار مع نمط محدَّد. هذا النمط ليس تعبيرًا نظاميًّا بل يتبع قواعد مشابهة لتعميم أسماء الملفات في الصدفة. البنية العامة fnmatch?( pattern, path, [flags] ) → (true or false) المعاملات pattern النمط المراد منه مطابقة المسار path المعطى. يمكن أن يحتوي على المحارف الخاصَّة (metacharacters، أو تدعى محارف الصدفة أيضًا) التالية: المحرف الخاص الوصف * يطابق أي ملف. يمكن أن يُقيَّد بقيم أخرى في النطاق العام (glob). هذا المحرف يقابل ‎/ * /x‎. في التعابير النظامية. ...

التهيئة الأولية للصنف Regex في Kotlin

تنشئ الدالة Regex()‎ تعبيرًا نمطيًا (regular expression) انطلاقًا من السلسلة النصية المُمرّرة إليه. البنية العامة Regex(pattern: String) Regex(pattern: String, option: RegexOption) Regex(pattern: String, options: Set<RegexOption>) تنشئ الدالة Regex()‎ تعبيرًا نمطيًا من النمط pattern مع ضبطه وفقًا الخيار option أو مجموعة الخيارات options (أو القيمة الافتراضية لهذه الخيارات إن لم يعطَ الوسيط option) التي تضبط ذلك النمط. المعاملات pattern سلسلة نصية تمثل النمط الذي سينشأ منه تعبير نمطي. option كائن من النوع RegexOption يحوي خيارًا واحدًا من خيارات التعابير النمطية. options مجموعة تتألف من ...

التهيئة الأولية للصنف Regex في Kotlin

تنشئ الدالة Regex()‎ تعبيرًا نمطيًا (regular expression) انطلاقًا من السلسلة النصية المُمرّرة إليه. البنية العامة Regex(pattern: String) Regex(pattern: String, option: RegexOption) Regex(pattern: String, options: Set<RegexOption>) تنشئ الدالة Regex()‎ تعبيرًا نمطيًا من النمط pattern مع ضبطه وفقًا الخيار option أو مجموعة الخيارات options (أو القيمة الافتراضية لهذه الخيارات إن لم يعطَ الوسيط option) التي تضبط ذلك النمط. المعاملات pattern سلسلة نصية تمثل النمط الذي سينشأ منه تعبير نمطي. option كائن من النوع RegexOption يحوي خيارًا واحدًا من خيارات التعابير النمطية. options مجموعة تتألف من ...

التابع String.gsub!‎ في روبي

يبدل التابع gsub!‎ قيمة (أو قيم) محدَّدة مكان جميع الأنماط المتطابقة في السلسلة النصية التي استدعي معها. هذا التابع مماثل تمامًا للتابع gsub ولكن يعدل على السلسلة المعطاة نفسها. البنية العامة gsub!(pattern, replacement) → str or nil gsub!(pattern, hash) → str or nil gsub!(pattern) {|match| block } → str or nil gsub!(pattern) → an_enumerator المعاملات pattern يكون عادةً تعبيرًا نمطيًّا. إن كان سلسلة نصية، فستُفسَّر أية محارف خاصة بالتعبيرات النمطية الموجودة فيها حرفيًّا؛ أي '‎\\d' سيطابق خط مائل عكسي يتبعه الحرف 'd' مباشرةً ...

 التابع Dir.glob في روبي

يوسّع التابع glob الوسيطَ pattern الممرّر (انظر فقرة البنية العامة)، الذي هو سلسلة نصية نمطية (pattern string) أو مصفوفة من السلاسل النصية النمطية، ويعيد مصفوفة تحتوي أسماء الملفات المُطابقة لذلك النمط. في حال تم إعطاء كتلة (block)، فسيستدعي التابع glob الكتلة مرة واحدة على كل اسم ملف مطابق، إذ سيمرّر اسم الملف كوسيط إلى الكتلة. يحدِّد الوسيط base الاختياري المجلد الأساسي (base directory) لتفسير أسماء المسارات النسبية بدلاً من مجلد العمل الحالي. وبما أنّ النتائج لا تكون مسبوقة باسم المجلد ...

التابع String.scan في روبي

يبحث التابع scan عن نمط محدَّد ضمن السلسلة النصية التي استدعيت معه ويعيد النتائج المتطابقة في مصفوفة أو يمرِّرها إلى الكتلة المعطاة ويعيد الناتج الذي تعيده. البنية العامة scan(pattern) → array scan(pattern) {|match, ...| block } → str المعاملات pattern تعيبر نمطي أو سلسلة نصية يراد البحث عنها ومطابقتها في السلسلة النصية المعطاة. إن لم يحتوي هذا المعامل على مجموعات، فستتألف كل نتيجة فردية من السلسلة النصية المتطابقة (أي &$). أمَّا إن احتوى على مجموعات، فستكون كل نتيجة فردية مصفوفةً بحد ...

الدالة preg_grep()‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎ في PHP

(PHP 4, PHP 5, PHP 7) تُعيد الدالة preg_grep()‎‎ عناصر المصفوفة التي تطابق النمط. الوصف array preg_grep ( string $pattern , array $input [, int $flags = 0 ] ) تُعيد هذه الدالة مصفوفة تتكون من عناصر المصفوفة input والتي تتطابق مع النمط pattern المُدخَل. العوامل pattern النمط المراد البحث عنه، كسلسلة نصية. input المصفوفة المُدخَلة. flags إذا ضبطت على PREG_GREP_INVERT، فستُعيد هذه الدالة عناصر مصفوفة الإدخال التي لا تتطابق مع النمط pattern المُدخل. القيم المعادة تُعيد هذه الدالة مصفوفة مفهرسة ...

الدالة preg_replace()‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎ في PHP

(PHP 4, PHP 5, PHP 7) تبحث الدالة preg_replace()‎‎‎ عن تعبير نمطي وتستبدله. الوصف mixed preg_replace ( mixed $pattern , mixed $replacement , mixed $subject [, int $limit = -1 [, int &$count ]] ) تبحث هذه الدالة في الهدف subject عن النمط المطابق pattern وتبدله إلى replacement. المعاملات pattern النمط المراد البحث عنه. ويمكن أن يكون إما سلسلةً نصيةً أو مصفوفةً من السلاسل النصية. وتتوافر أيضًا العديد من مُعدِّلات PCRE. replacement السلسلة النصية البديلة أو مصفوفة السلاسل النصية البديلة. إذا ...

التابع String.gsub في روبي

يعيد التابع gsub نسخة من السلسلة النصية التي استدعيت معه مع تبديل قيمة (أو قيم) محدَّدة مكان جميع الأنماط المتطابقة فيها. البنية العامة gsub(pattern, replacement) → new_str gsub(pattern, hash) → new_str gsub(pattern) {|match| block } → new_str gsub(pattern) → enumerator إن أعطيت كتلة block إلى التابع، فستُمرَّر السلسلة الحالية المتطابقة إليها وستعيَّن قيم متغيرات مثل ‎$1، و ‎$2، و ‎$`‎، و ‎$&‎، و ‎$'‎ بشكل مناسب. ستحل القيم التي تعيدها الكتلة مكان القيمة المتطابقة في كل استدعاء. المعاملات pattern يكون عادةً تعبيرًا نمطيًّا. إن ...

التابع Enumerable.grep_v في روبي

يعدُّ التابع grep_v نسخة معاكسة للتابع grep، إذ يعيد مصفوفة تحوي كل العناصر الغير مطابقة لنمط محدَّد من عناصر الكائن القابل للتعداد المعطى. البنية العامة grep_v(pattern) → array grep_v(pattern) { |obj| block } → array المعاملات pattern النمط المراد مطابقته لكل عنصر من عناصر الكائن القابل للتعداد المعطى. القيمة المعادة تعاد مصفوفة تحوي كل عنصر غير مطابق للنمط pattern من عناصر الكائن القابل للتعداد المعطى، أو القيم التي تعيدها الكتلة لكل عنصر غير مطابق للنمط بعد تمريره إليها. أمثلة مثال على استعمال التابع ...

التابع String.match?‎ في روبي

يحول التابع match?‎ النمط المُمرَّر إليه إلى تعبير نمطي (إن لم يكن كذلك) ثم يتحقق من مطابقته من السلسلة النصية التي استدعي معها دون تحديث قيمة المتغير ~$ والمتغيرات الأخرى المماثلة. البنية العامة match?(pattern) → true or false match?(pattern, pos) → true or false المعاملات pattern التعبير النمطي المراد مطابقته للسلسلة النصية المعطاة. إن يكن تعبيرًا نمطيًّا، فسيُحوَّل النمط المعطى إلى تعبير نمطي. pos إن أعطي هذا المعامل الاختياري، فسيُحدِّد موضع بدء عملية المطابقة في السلسلة النصية المعطاة. القيمة المعادة تعاد القيمة ...

التابع Enumerable.grep في روبي

يعيد التابع grep مصفوفة تحوي كل عنصر مطابق لنمط محدَّد من عناصر الكائن القابل للتعداد الذي استدعي معه. إن أعطيت كتلة، فسيُمرَّر كل عنصر مطابق للنمط إليها ثم تعاد مصفوفة تحوي النتائج المقابلة التي تعيدها هذه الكتلة للعناصر المطابقة. البنية العامة grep(pattern) → array grep(pattern) { |obj| block } → array المعاملات pattern النمط المراد مطابقته لكل عنصر من عناصر الكائن القابل للتعداد المعطى. القيمة المعادة تعاد مصفوفة تحوي كل عنصر مطابق للنمط pattern من عناصر الكائن القابل للتعداد المعطى، أو القيم التي ...

التابع String.sub في روبي

يعيد التابع sub نسخة من السلسلة النصية التي استدعي معها مع تبديل قيمة محدَّدة مع أول تطابق للنمط المعطى. البنية العامة sub(pattern, replacement) → new_str sub(pattern, hash) → new_str sub(pattern) {|match| block } → new_str إن أعطيت كتلة block إلى التابع، فستُمرَّر السلسلة الحالية المتطابقة إليها وستعيَّن قيم متغيرات مثل ‎$1، و ‎$2، و ‎$`‎، و ‎$&‎، و ‎$'‎ بشكل مناسب. ستحل القيم التي تعيدها الكتلة مكان القيمة المتطابقة في كل استدعاء. المعاملات pattern يكون عادةً تعبيرًا نمطيًّا. إن كان سلسلة نصية، فستُفسَّر أية محارف ...

الصنف ‎‎Regex‎ في Kotlin

يمثل الصنف Regex تعبيرًا نمطيا قابلًا للتعديل (immutable regular expression). إن أردت الاطلاع على المزيد من المعلومات المتعلقة بصياغة النمط (pattern)، انتقل إلى صفحة الصنف Pattern. actual class Regex : Serializable الدوال البانية <init> تنشئ الدالة Regex()‎ تعبيرًا نمطيًا (regular expression) انطلاقًا من السلسلة النصية المُمرّرة إليه. الخاصيات options تمثل هذه الخاصية مجموعةَ الخيارات التي استُخدمت في إنشاء التعبير النمطي الذي استُدعي معها. pattern تمثل هذه الخاصية النمط الأولي الذي استُخدم في إنشاء التعبير النمطي الذي استُدعي معها. الدوال containsMatchIn ...

الصنف ‎‎Regex‎ في Kotlin

يمثل الصنف Regex تعبيرًا نمطيا قابلًا للتعديل (immutable regular expression). إن أردت الاطلاع على المزيد من المعلومات المتعلقة بصياغة النمط (pattern)، انتقل إلى صفحة الصنف Pattern. actual class Regex : Serializable الدوال البانية <init> تنشئ الدالة Regex()‎ تعبيرًا نمطيًا (regular expression) انطلاقًا من السلسلة النصية المُمرّرة إليه. الخاصيات options تمثل هذه الخاصية مجموعةَ الخيارات التي استُخدمت في إنشاء التعبير النمطي الذي استُدعي معها. pattern تمثل هذه الخاصية النمط الأولي الذي استُخدم في إنشاء التعبير النمطي الذي استُدعي معها. الدوال containsMatchIn ...

الدالة fnmatch()‎ في PHP

(PHP 4 >= 4.3.0,PHP 5, PHP 7) تتحقَّق الدالة fnmatch()‎ من تطابق اسم ملف محدَّد مع نمط معيّن. الوصف bool fnmatch ( string $pattern , string $string [, int $flags = 0 ] ) تتحقَّق هذه الدالة من تطابق السلسلة النصيَّة string المُمرَّرة مع النمط pattern الذي يمكن أن يُستعمل معه محارف البدل الخاصة (wildcard) المُستخدمة في الصدفة. المعاملات pattern النمط المراد مُطابقته مع السلسلة النصيَّة string. يمكن استعمال محارف الصدفة الخاصة (wildcard ويشار إليها أيضًا meta characters) لإنشاء النمط. string ...

التابع String.sub!‎ في روبي

يبدل التابع sub!‎ قيمة محدَّدة مكان أول تطابق للنمط معطى في السلسلة النصية التي استدعي معها. هذا التابع مماثل تمامًا للتابع sub ولكن يعدل على السلسلة المعطاة نفسها. البنية العامة sub!(pattern, replacement) → str or nil sub!(pattern) {|match| block } → str or nil المعاملات pattern يكون عادةً تعبيرًا نمطيًّا. إن كان سلسلة نصية، فستُفسَّر أية محارف خاصة بالتعبيرات النمطية الموجودة فيها حرفيًّا؛ أي '‎\\d' سيطابق خط مائل عكسي يتبعه الحرف 'd' مباشرةً بدلًا من عددٍ. replacement إن كان سلسلة نصية، فسيحل مكان النص المتطابق. قد يحوي ...

التابع Enumerable.none?‎ في روبي

يتحقق التابع none?‎ من خلو كائن قابل للتعداد من أي عنصر محقِّق للكتلة المعطاة (لا تعيد مع أي عنصر القيمة true) أو مطابق للنمط محدَّد. البنية العامة none? [{ |obj| block }] → true or false none?(pattern) → true or false المعاملات pattern نمط يراد التحقق من عدم مطابقته لأي عنصر من عناصر الكائن القابل للتعداد المعطى. القيمة المعادة تعاد القيمة true إن لم تعيد الكتلة block القيمة true لجميع عناصر الكائن القابل للتعداد بعد تمرير كل واحد منها إليها، أو لم يتطابق ...

التابع FileTest.all?‎ في روبي

يُمرِّر التابع all?‎ كل عنصر من عناصر المجموعة التي استدعيت معه إلى الكتلة المعطاة ثمَّ يتحقق من عدم إعادة هذه الكتلة القيمة false أو nil مع كل عنصر من تلك العناصر. إن لم تعطَ أية كتلة، فستُضيف روبي الكتلة { ‎|obj| obj } والتي تدفع التابع لإعادة القيمة true عندما لا تكون قيمة كل عنصر من عناصر المجموعة هي false أو nil. إن مُرِّر نمط إلى التابع all?‎ بدلًا من الكتلة، فسيتحقق من تطابق هذا النمط مع كل عنصر من عناصر المجموعة المعطاة. ...

التابع String.match في روبي

يحول التابع match النمط المُمرَّر إليه إلى تعبير نمطي (إن لم يكن كذلك) ثم يطابقه مع السلسلة النصية التي استدعيت معه. البنية العامة match(pattern) → matchdata or nil match(pattern, pos) → matchdata or nil إن أعطيت كتلة، فستُستدعَى مع الكائن MatchData المعاد إن نجحت عملية المطابقة، وبذلك يمكننا كتابة: str.match(pat) {|m| ...} بدلًا من: if m = str.match(pat) ... end وستكون القيمة المعادة هي القيمة التي تعيدها الكتلة بعد انتهاء تنفيذها في هذه الحالة. المعاملات pattern التعبير النمطي المراد مطابقته للسلسلة النصية المعطاة. إن ...

الدالة Regex_1 في Kotlin

أصبحت الدالة Regex_1 مهملة، إذ كانت متوافرة من أجل التوافقية الثنائية (binary compatibility). تنشئ هذه الدالة تعبيرًا نمطيًا (regular expression) انطلاقًا من السلسلة النصية المُمرّرة مع استعمال الخيارات الافتراضية. البنية العامة fun Regex_1(pattern: String): Regex (source) المعاملات pattern سلسلة نصية تمثل النمط الذي سينشأ منه تعبير نمطي. القيم المعادة يعاد كائن من النوع Regex يحتوي على التعبير النمطي pattern بعد ضبطه وفقًا للقيمة الافتراضية للخيارات. انظر أيضًا الدالة Regex()‎: تنشئ تعبيرًا نمطيًا (regular expression) انطلاقًا من السلسلة النصية المُمرّرة إليه. الدالة findAll()‎: تبحث عن جميع المحارف المتطابقة مع التعبير النمطي الذي استُدعي معها في سلسلة المحارف الممرَّرة ...

الدالة Regex_0 في Kotlin

أصبحت الدالة Regex_0 مهملة، إذ كانت متوافرة من أجل التوافقية الثنائية (binary compatibility). تنشئ هذه الدالة تعبيرًا نمطيًا (regular expression) انطلاقًا من السلسلة النصية والخيارات المُمرّرة إليها. البنية العامة fun Regex_0(pattern: String, option: RegexOption): Regex منصة التشغيل المطلوبة: JS. المعاملات pattern سلسلة نصية تمثل النمط الذي سينشأ منه تعبير نمطي. option كائن من النوع RegexOption يحوي خيارًا واحدًا من خيارات التعابير النمطية. القيم المعادة يعاد كائن من النوع Regex يحتوي على التعبير النمطي pattern بعد ضبطه وفقًا للخيار option. انظر أيضًا الدالة Regex()‎: تنشئ تعبيرًا نمطيًا (regular expression) انطلاقًا من السلسلة النصية المُمرّرة إليه. الدالة containsMatchIn()‎: تتحقق ...

التابع Array.any?‎ في روبي

يتحقق التابع any?‎ إذا كان كل عنصر من عناصر المصفوفة المعطاة مححقًا لشرط منطقي محدد أو كانت قيمة كل عنصر لا تساوي القيمة false (أي لا يعيد أي عنصر القيمة false أو nil عند التحقق من مطابقته للشرط). إن لم تمرَّر أية كتلة برمجية تمثل الشرط، فستضيف روبي الكتلة { ‎ |obj| block} ضمنيًا، وسيعيد حينئذٍ التابع any?‎ القيمة true إن لم يتساوى أي عنصر من عناصر المصفوفة مع القيمة false أو القيمة nil. إن مرِّر نمطٌ (pattern) بدلًا من ...

التابع Enumerable.one?‎ في روبي

يتحقق التابع one?‎ من احتواء كائن قابل للتعداد على عنصر واحد فقط محقِّق للكتلة المعطاة (لا تعيد مع أي عنصر القيمة true باستثناء عنصر واحد فقط) أو مطابق للنمط محدَّد. البنية العامة one? [{ |obj| block }] → true or false one?(pattern) → true or false المعاملات pattern نمط يراد التحقق من مطابقته لعنصر واحد فقط من عناصر الكائن القابل للتعداد المعطى. القيمة المعادة تعاد القيمة true إن إن أعادت الكتلة block القيمة true لعنصر واحد فقط من عناصر الكائن القابل للتعداد بعد ...

RegExp.prototype.[@@replace]()‎

الدالة RegExp.prototype.[@@replace]()‎ تُعيد سلسلةً نصيةً جديدةً فيها بعض أو جميع الأجزاء المُطابَقة عبر النمط this قد استبدلتها السلسلة النصية replacement. لاحظ أنَّ النمط pattern يمكن أن يكون سلسلةً نصيةً أو كائن RegExp، ويمكن أن يكون الوسيط replacement سلسلةً نصيةً أو دالةً التي ستُستدعى لكل مُطابَقة. البنية العامة regexp[Symbol.replace](str, newSubStr|function) str السلسلة النصية التي سنبحث عن مُطابَقة للتعبير النمطي فيها لاستبداله. newSubStr السلسلة النصية String التي ستستبدل السلسلة الفرعية، وهنالك عددٌ من الأنماط الفرعية المدعومة فيها، انظر قسم «تحديد سلسلة نصية كوسيط» في صفحة الدالة String.prototype.replace()‎ للتفاصيل. function الدالة ...

التابع Symbol.match‎ في روبي

يعيد التابع match ناتج التعبير sym.to_s.match. البنية العامة match(pattern) → matchdata or nil match(pattern, pos)→ matchdata or nil‎ المعاملات pattern‎ نمط يراد به مطابقة الرمز المعطى. pos‎ موضع بدء عملية المطابقة. القيمة المعادة يعاد كائنٌ من النوع Matchdata يحوي نتائج التطابق. انظر أيضًا التابع match?‎: يعيد ناتج التعبير sym.to_s.match?‎. مصادر قسم التابع match‎ في الصنف Symbol‎ في توثيق روبي الرسمي.

التابع sub‎ الخاص بالصنف Kernel في روبي

يكافئ التابع sub التعبير ‎‎‎$_‎.sub( args )‎ ، باستثناء أنه سيتم تحديث ‎$_‎ إذا حدث استبدال. متوفر فقط عند تحديد خيار سطر الأوامر ‎-p/-n. البنية العامة sub(pattern, replacement)→ $_ sub(pattern) {|...| block } → $_‎ القيمة المعادة يعاد ناتج استدعاء التعبير ‎‎‎$_‎.sub( args )‎. انظر أيضا التابع gsub: يكافئ التعبير ‎$_.gsub...‎، باستثناء أنه سيتم تحديث ‎$_‎ في حال حدوث استبدال. مصادر قسم التابع sub‎ في الصنف Kernel‎ في توثيق روبي الرسمي.

التابع String.split في روبي

يُقسِّم التابع split السلسلة النصية التي استدعي معها إلى سلاسل نصية فرعية اعتمادًا على فاصل محدَّد ثم يعيد تلك السلاسل الفرعية في مصفوفة. البنية العامة scan(pattern) → array scan(pattern) {|match, ...| block } → str المعاملات pattern إن كان هذا المعامل سلسلة نصية، فستُسعمَل هذه السلسلة على أنَّها الفاصل الذي يفصل أجزاء السلسلة النصية المعطاة عن بعضها بعضًا. أمَّا إن كان هذا المعامل فراغًا واحدًا، فستُقسَّم السلسلة النصية المعطاة عند كل فراغ موجود بين كلماتها؛ وعند وجود أكثر من فراغ واحد، ...

التابع gsub‎ الخاص بالصنف Kernel في روبي

يكافئ التابع gsub التعبير ‎$_.gsub...‎، باستثناء أنه سيتم تحديث ‎$_‎ في حال حدوث استبدال. متوفر فقط عند تحديد خيار سطر الأوامر ‎-p/-n. البنية العامة gsub(pattern, replacement) → $_ gsub(pattern) {|...| block } → $_‎ القيمة المعادة يعاد ناتج استدعاء التعبير ‎$_.gsub...‎. انظر أيضا التابع gets: يعيد السطر التالي من قائمة الملفات في ARGV (أو ‎$‎‎*‎)، أو من مجرى الإدخال القياسي في حالة عدم تمرير أي ملفات في سطر الأوامر. مصادر قسم التابع gsub‎ في الصنف Kernel‎ في توثيق روبي الرسمي.

التابع Enumerable.slice_after في روبي

يقطِّع التابع slice_after عناصر الكائن القابل للتعداد إلى أجزاء تحدَّد نهايتها عبر نمطٍ محدِّدٍ أو كتلةٍ معطاةٍ ثم يعيد مُعدِّد لكل جزء من الأجزاء الناتجة. البنية العامة slice_after(pattern) → an_enumerator slice_after { |elt| bool } → an_enumerator إن كان النمط مطابقًا للعنصر (أي يعيد pattern === elt القيمة true) أو أعادت الكتلة القيمة true للعنصر المُمرَّر إليها، فسيُعدُّ العنصر نهايةً لجزء. يُستدعَى المعامل === والكتلة block من أول عنصر وحتى آخر عنصر من عناصر الكائن القابل للتعداد المعطى. يُنتِج المُعدِّد المعاد العناصر ...

التابع FileTest.any?‎ في روبي

يُمرِّر التابع any?‎ كل عنصر من عناصر المجموعة التي استدعيت معه إلى الكتلة المعطاة ثمَّ يتحقق من عدم إعادة هذه الكتلة القيمة false أو nil مع أي عنصر من تلك العناصر. إن لم تعطَ أية كتلة، فستُضيف روبي الكتلة { ‎|obj| obj } والتي تدفع التابع لإعادة القيمة true عندما لا تكون قيمة أحد عناصر المجموعة هي false أو nil. إن مُرِّر نمط إلى التابع any?‎ بدلًا من الكتلة، فسيتحقق من تطابق هذا النمط مع أحد عناصر المجموعة المعطاة. البنية العامة any? [{ ...

الدالة Regex.toString()‎ في Kotlin

تحول الدالة toString()‎ تعبيرًا نمطيًّا إلى سلسلة نصية (أي نمط [Pattern] ذلك التعبير النمطي). البنية العامة fun toString(): String القيمة المعادة تعاد سلسلة نصية تمثل التعبير النمطي المعطى. أمثلة استعمال الدالة toString()‎ لتحويل تعبير نمطيّ إلى سلسلة نصية: fun main(args: Array<String>) { // يطابق التعبير النمطي التالي القيم العددية val reg = Regex("""-?\d+(\.\d+)?""") println(reg.toString()) // => -?\d+(\.\d+)? } انظر أيضًا الدالة toPattern()‎: تحول كائنًا من النوع Regex (تعبيرًا نمطيًا) إلى النوع Pattern (نمط).  ...

إضافة العولمة في كوردوفا

تمكّن إضافة العولمة (cordova-plugin-globalization) من الحصول على معلومات حول الإعدادات المحلية واللغوية والزمنية للمستخدم. لاحظ الفرق بين الإعدادات المحلية (locale) وبين اللغة: الإعدادات المحلية تتحكم في كيفية عرض الأرقام والتواريخ والأوقات في منطقة معيّنةٍ، بينما تحدد "اللغة" لغةَ النصوص، بصرف النظر عن الإعدادات المحلية. يستخدم المطورون في كثير من الأحيان الإعدادات المحلية لضبط كلا الإعدادين، ولكن لا يوجد سبب يمنع المستخدم من تعيين اللغة إلى "العربية"، مع تعيين الإعدادات المحلية إلى "الفرنسية"، بحيث يتم عرض النص باللغة العربية، ولكن مع ...

Python/pathlib/Path/glob

التابع Path.glob في بايثون تعيد جميع الملفات التي تحقق نمط glob المعطى، مهما كان نوع الملف البنية العامة glob(pattern) المعاملات الوسيط pattern نمط glob المُراد مُطابقته. القيمة المعادة يُعيد قائمة عناصرها كائنات مسار، تُمثّل جميع الملفات التي تحقق نمط glob المعطى. أمثلة يبين المثال التالي طريقة استخدام التابع: >>> sorted(Path('.').glob('*.py')) [PosixPath('pathlib.py'), PosixPath('setup.py'), PosixPath('test_pathlib.py')] >>> sorted(Path('.').glob('*/*.py')) [PosixPath('docs/conf.py')] استخدام النمط "**" يعني النمط "**" تحديد المجلد الحالي وجميه المجلدات الفرعية في داخله بشكل عودي (recursively)، وهو ما يسمّى recursive globbing >>> sorted(Path('.').glob('**/*.py')) [PosixPath('build/lib/pathlib.py'), PosixPath('docs/conf.py'), PosixPath('pathlib.py'), PosixPath('setup.py'), PosixPath('test_pathlib.py')] ملاحظة: احذر من ...

الخاصية Regex.pattern في Kotlin

تمثل الخاصية Regex.pattern النمط الذي استعمل في إنشاء التعبير النمطي الذي استُدعي معها. البنية العامة actual val pattern: String القيمة المعادة تعاد سلسلة نصية تمثل النمط الذي استعمل في إنشاء التعبير النمطي المعطى. أمثلة استعمال الخاصية Regex.pattern مع تعبير نمطي لمعرفة النمط الأولي الذي استعمل في إنشائه -باستعمال الدالة Regex()‎-: fun main(args: Array<String>) { val reg = Regex("""-?\d+(\.\d+)?""") print(reg.pattern ) // -?\d+(\.\d+)? } انظر أيضًا الخاصية Regex.options: تمثل مجموعةَ الخيارات التي استُخدمت في إنشاء التعبير ...

الدالة re.escape()‎ في بايثون‎

تهرّب الدالة جميع المحارف الخاصّة في التعبير النمطي المعطى باستثناء حروف الترميز ASCII، والأعداد والشرطة السفلية. البنية العامة re.escape(pattern) المعاملات pattern التعبير النمطي الذي تهرّب الدالة محارفه الخاصة. القيمة المعادة تعيد الدالة النمط الأصلي بعد تهريب جميع المحارف الخاصّة فيه باستثناء حروف الترميز ASCII، والأعداد والشرطة السفلية. هذه الدالة مفيدة عند الحاجة إلى مطابقة سلسلة نصية يحتمل أن تتضمن بعض الحروف الخاصّة بالتعابير النمطية. أمثلة تبيّن الأمثلة التالية طرق استخدام الدالة re.escape()‎: >>> print(re.escape('python.exe')) python\.exe >>> legal_chars = string.ascii_lowercase + string.digits + ...

التابع Enumerable.slice_before في روبي

يقطِّع التابع slice_before عناصر الكائن القابل للتعداد إلى أجزاء تحدَّد بدايتها عبر نمطٍ محدِّدٍ أو كتلةٍ معطاةٍ ثم يعيد مُعدِّد لكل جزء من الأجزاء الناتجة. البنية العامة slice_before(pattern) → an_enumerator slice_before { |elt| bool } → an_enumerator إن كان النمط مطابقًا للعنصر (أي يعيد pattern === elt القيمة true) أو أعادت الكتلة القيمة true للعنصر المُمرَّر إليها، فسيُعدُّ العنصر بدايةً لجزء. يُستدعَى المعامل === والكتلة block من أول عنصر وحتى آخر عنصر من عناصر الكائن القابل للتعداد المعطى. يجري دومًا تجاهل النتيجة ...

الدالة preg_match()‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎ في PHP

(PHP 4, PHP 5, PHP 7) تُطابق الدالة preg_match()‎‎ تعبيرًا نمطيًا على سلسلة نصية. الوصف int preg_match ( string $pattern , string $subject [, array &$matches [, int $flags = 0 [, int$offset = 0 ]]] ) تبحث الدالة في السلسلة النصية subject عن مُطابقة للتعبير النمطي الُمعطى pattern. المعاملات pattern النمط المراد البحث عنه، كسلسلة نصية. subject السلسلة النصية المُدخلة. matches إذا ضُبِطَت قيمة المعامل matches، فستُملأ تلك المصفوفة بنتائج البحث. إذ ستحتوي ‎‎‎‎$matches[0]‎ على النص الذي يطابق النمط الكامل، ...

الدالة glop()‎ في PHP

(PHP 4 >= 4.3.0, PHP 5, PHP 7) تبحث الدالة glob()‎ عن مسارات محدَّدة لملفات أو مجلَّدات والتي تتطابق مع نمط مُعطى. الوصف array glob ( string $pattern [, int $flags = 0 ] ) تبحث هذه الدالة عن جميع المسارات التي تُطابق النمط pattern وفقًا للقواعد التي تستخدمها المكتبة libc للدالة glob()‎، والتي تشبه نظيرتها المستخدمة من قبل أشهر الصدفات (shells). المعاملات pattern التعبير النمطي المُعطى. الرمز ~ (المَدَّة [tilde]) غير مدعوم، كما أنَّه لا يُجرى أي عملية استبدال للمعاملات. ...

التابع match.expand()‎ في بايثون

يجري هذا التابع عملية استبدال التسلسلات المسبوقة بالخط المائل العكسي بالاعتماد على قالب متمثّلٍ بسلسلة نصية. البنية العامة match.expand(template) المعاملات template سلسلة نصية تتضمّن تسلسلات مسبوقة بالخط المائل العكسي تمثّل القالب الذي سيستخدمه التابع لإجراء عمليات الاستبدال. القيمة المعادة يعيد التابع السلسلة النصية الناتجة عن إجراء عمليات عملية استبدال التسلسلات المسبوقة بالخط المائل العكسي بالاعتماد على قالب متمثّلٍ بسلسلة نصية، وبنفس طريقة عمل التابع regex.sub()‎. إذ تُحوّل تسلسلات التهريب مثل ‎\n إلى المحارف المقابلة، وتحوّل الإشارات الخلفية الرقمية مثل (‎\2، ...

الاستثناء re.error()‎ في بايثون‎

تطلق اللغة هذا الاستثناء عند تمرير سلسلة نصية غير صالحة كتعبير نمطي إلى إحدى الدوال السابقة (كأن تتضمن السلسلة أقواسًا غير متطابقة)، أو عند حدوث أخطاء أخرى أثناء عملية التصريف أو المطابقة. لا يعد خلوّ السلسلة النصية من التطابقات خطأً على الإطلاق. البنية العامة re.error(msg, pattern=None, pos=None) الخاصيات تمتلك نسخة الخطأ الخصائص الإضافية التالية: msg رسالة الخطأ غير المنسّقة. pattern التعبير النمطي. pos موقع حدوث الخطأ في تصريف التعبير النمطي (قد يأخذ القيمة None). lineno السطر الحاوي على قيمة الخاصية ...

الدالة re.search()‎ في بايثون‎

تفحص الدالة السلسلة النصية بحثًا عن أول موقع يحصل فيه تطابق مع التعبير النمطي المعطى، وتعيد كائن match المقابل. البنية العامة re.search(pattern, string, flags=0) المعاملات pattern التعبير النمطي المستخدم لإجراء عملية المطابقة. string السلسلة النصية التي ستبحث فيها الدالة عن حالات التطابق. flags الرايات المستخدمة لضبط عملية البحث. يأخذ هذا المعامل القيمة 0 كقيمة افتراضية. راجع قسم المعاملات في توثيق الدالة ()re.compile للمزيد من المعلومات. القيمة المعادة تعيد الدالة كائن match عند العثور على حالة تطابق بين التعبير النمطي والسلسلة ...

الدالة preg_split()‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎ في PHP

(PHP 4, PHP 5, PHP 7) تُقسِّم الدالة preg_split()‎‎‎ سلسلة نصية باستخدام التعبير النمطي. الوصف array preg_split ( string $pattern , string $subject [, int $limit = -1 [, int $flags = 0 ]] ) تُقسِّم هذه الدالة السلسلة النصية المعطاة باستخدام تعبير نمطي. المعاملات pattern النمط المراد البحث عنه، كسلسلة نصية. subject السلسلة النصية المُدخلة. limit إذا تم تحديد هذا المعامل، فستُعاد السلاسل النصية الفرعية فقط حتى limit، مع ترك باقي السلسلة النصية لتُوضَع في السلسلة النصية الفرعية الأخيرة. وعندما ...

الدالة re.fullmatch()‎ في بايثون‎

تتحقّق الدالة ممّا إذا كانت السلسلة النصية بأكملها مطابقة للتعبير النمطي المعطى. البنية العامة re.fullmatch(pattern, string, flags=0) المعاملات pattern التعبير النمطي المستخدم لإجراء عملية المطابقة. string السلسلة النصية التي ستبحث فيها الدالة عن حالات التطابق. flags الرايات المستخدمة لضبط عملية البحث. يأخذ هذا المعامل القيمة 0 كقيمة افتراضية. راجع قسم المعاملات في توثيق الدالة ()re.compile للمزيد من المعلومات. القيمة المعادة إن طابقت السلسلة النصية بأكملها التعبير النمطي المعطى، فستعيد الدالة كائن match المقابل، وتعيد القيمة None إن لم تطابق السلسلة ...

String.prototype.replace()‎

الدالة String.prototype.replace()‎ تُعيد سلسلةً نصيةً جديدةً فيها بعض أو جميع الأجزاء المُطابَقة عبر النمط pattern قد استبدلتها السلسلة النصية replacement. لاحظ أنَّ النمط pattern يمكن أن يكون سلسلةً نصيةً أو كائن RegExp، ويمكن أن يكون الوسيط replacement سلسلةً نصيةً أو دالةً التي ستُستدعى لكل مُطابَقة. لاحظ أنَّ السلسلة النصية الأصلية ستبقى دون تعديل. البنية العامة str.replace(regexp|substr, newSubstr|function) regexp (أي pattern) كائن RegExp الذي ستبدّل الأجزاء المُطابَقة به إلى السلسلة النصية newSubStr أو بالقيمة المعادة من الدالة function. substr (أي pattern) ...

الدالة re.subn()‎ في بايثون‎

تؤدي هذه الدالة نفس عمل الدالة re.sub()‎ ولكنّها تعيد الناتج على هيئة صفّ (السلسلة الجديدة، عدد الاستبدالات المجراة). البنية العامة re.subn(pattern, repl, string, count=0, flags=0) المعاملات pattern التعبير النمطي المستخدم لإجراء عملية المطابقة. يمكن للنمط أن يكون سلسلة نصية أو كائن نمط (pattern object). repl يمكن للبديل repl أن يكون سلسلة نصية أو دالة، وإن كان سلسلة نصية، فإنّ الدالة تعالج جميع المحارف المهرّبة فيها. بمعنى أنّ ‎\n تحوّل إلى محرف سطر جديد مفرد، و ‎\r تحوّل إلى حرف إرجاع، ...

الدالة re.split()‎ في بايثون‎

تقسم الدالة السلسلة النصية عند كل مكان تحدث فيه عملية مطابقة للنمط المعطى. البنية العامة re.split(pattern, string, maxsplit=0, flags=0) المعاملات pattern التعبير النمطي المستخدم لإجراء عملية المطابقة. string السلسلة النصية التي ستبحث فيها الدالة عن حالات التطابق. maxsplit العدد الأقصى من التقسيمات التي تجريها الدالة على السلسلة النصية. في حال كان العدد الأقصى من التقسيمات أقل من عدد حالات المطابقة فإنّ الدالة تعيد ما يبقى من السلسلة النصية ليكون العنصر الأخير في القائمة المعادة. يأخذ هذا المعامل القيمة الافتراضية 0. ...

الدالة re.match()‎ في بايثون‎

تفحص الدالة بداية السلسلة النصية بحثًا عن حالة تطابق مع التعبير النمطي المعطى، وتعيد كائن match المقابل. البنية العامة re.match(pattern, string, flags=0) المعاملات pattern التعبير النمطي المستخدم لإجراء عملية المطابقة. string السلسلة النصية التي ستبحث فيها الدالة عن حالات التطابق. flags الرايات المستخدمة لضبط عملية البحث. يأخذ هذا المعامل القيمة 0 كقيمة افتراضية. راجع قسم المعاملات في توثيق الدالة ()re.compile للمزيد من المعلومات. القيمة المعادة تعيد الدالة كائن match المقابل إن عثرت على صفر أو أكثر من المحارف في بداية ...

المعامل delete في JavaScript

المعامل delete يحذف خاصيةً من كائن. البنية العامة delete expression إذ يجب أن تكون نتيجة التعبير expression هي مرجعية إلى خاصية من خاصيات الكائن، مثلًا: delete object.property delete object['property'] object اسم الكائن، أو تعبير نتيجته هي إشارة إلى كائنٍ ما. property اسم الخاصية التي نريد حذفها. القيمة المعادة القيمة true لكل الحالات إلا إذا كانت الخاصية غير قابلة للضبط (non-configurable property)، وفي هذه الحالة ستُعاد القيمة false في النمط non-strict. الاستثناءات سيُرمى SyntaxError في نمط strict إذا كانت الخاصية غير قابلةً للضبط ...

التابع Regexp.source‎ في روبي

يعيد التابع source السلسلة النصية الأصلية للنمط (pattern). لاحظ أنه سيتم الاحتفاظ بمحارف التهريب كما هي. البنية العامة source→ str‎ القيمة المعادة يعيد التابع source السلسلة النصية الأصلية للنمط. أمثلة مثال على استخدام التابع source‎: /ab+c/ix.source #=> "ab+c"‎ /\x20\+/.source #=> "\\x20\\+" انظر أيضا التابع to_s: يُعيد سلسلة نصية تحتوي على التعبير النمطي وخياراته. مصادر قسم التابع source‎ في الصنف Regexp‎ في توثيق روبي الرسمي.

الدالة toPattern()‎ في Kotlin

تحول الدالة toPattern()‎ السلسلة النصية التي استٌدعيت معها إلى نمط. البنية العامة inline fun String.toPattern(flags: Int = 0): Pattern منصة التشغيل المطلوبة: JVM. يُلاحَظ وجود الكلمة المفتاحية inline للدلالة على أن هذه الدالة مباشرة (للمزيد من التفاصيل، راجع صفحة الدوال المباشرة (inline functions)). المعاملات flags عدد صحيح يستعمل لتقسيم أو مطابقة السلسلة النصية المعطاة. القيم المعادة يعاد كائن من النوع Pattern. أمثلة مثالٌ على استعمال الدالة toPattern()‎: fun main(args: Array<String>) { println("""-?\d+(\.\d+)?""".toPattern()) // -?\d+(\.\d+)? // يطابق هذا التعبير النمطي القيم ...

Python/pathlib/Path/rglob

التابع PurePath.rglob في بايثون مشابه لاستدعاء التابع glob عند إضافة '**' في بداية النمط المُعطى البنية العامة >>> sorted(Path().rglob("*.py")) [PosixPath('build/lib/pathlib.py'), PosixPath('docs/conf.py'), PosixPath('pathlib.py'), PosixPath('setup.py'), PosixPath('test_pathlib.py')] المعاملات الوسيط pattern النمط المُراد مطابقته. القيمة المعادة مشابه لاستدعاء التابع glob عند إضافة '**' في بداية النمط المُعطى أمثلة يبين المثال التالي طريقة استخدام التابع: >>> sorted(Path().rglob("*.py")) [PosixPath('build/lib/pathlib.py'), PosixPath('docs/conf.py'), PosixPath('pathlib.py'), PosixPath('setup.py'), PosixPath('test_pathlib.py')] انظر أيضًا مصادر

الدالة next()‎ في بايثون

تعيد الدّالة next()‎ القيمة التّالية من المُكرّر المٌعطى عبر استدعاء تابعه الخاصّ ‎_‎_‎next‎_‎_‎()‎. البنية العامة next(iterator[, default]) المعاملات iterator المُكرّر المرُاد الحصول على قيمته التّالية. default مُعامل اختياريّ. تُعاد قيمته عندما تنتهي قيم المُكرّر، وإن لم يُمرّر، فسيُطلَق استثناء StopIteration. القيمة المعادة القيمة التّاليّة للمُكرّر أو القيمة الافتراضيّة المُعطاة للمُعامل default عندما تنتهي قيم المُكرّر. أمثلة المثال التّالي يوضّح كيفيّة عمل هذه الدّالة: >>> name = 'Yousuf' >>> iterator = iter(name) >>> iterator <str_iterator object at 0x7f314d904fd0> >>> next(iterator) 'Y' >>> next(iterator) 'o' >>> next(iterator) 'u' >>> next(iterator) 's' >>> next(iterator) 'u' >>> next(iterator) 'f' >>> ...

الدالة withIndex()‎ في Kotlin

تعيد الدالة withIndex()‎ مجموعة تكرارية خاملة (lazy Iterable) من القيم المُفهرسة لكل عنصر من عناصر المصفوفة أو المجموعة التكرارية التي استُدعيت معها، أو تعيد مُكرّرًا (iterator) يغلّف كل عنصر أنتجه المكرّر (Iterator) المستدعى مع الدالة مع القيمة المُفهرسة أي يعيد القيمة مع فهرسها. البنية العامة يمكن استدعاء الدالة withIndex()‎ مع المصفوفات أو المجموعات التكرارية أو المكرِّرات: fun <T> Array<out T>.withIndex(): Iterable<IndexedValue<T>> fun ByteArray.withIndex(): Iterable<IndexedValue<Byte>> fun ShortArray.withIndex(): Iterable<IndexedValue<Short>> fun IntArray.withIndex(): Iterable<IndexedValue<Int>> fun LongArray.withIndex(): Iterable<IndexedValue<Long>> fun FloatArray.withIndex(): Iterable<IndexedValue<Float>> fun DoubleArray.withIndex(): Iterable<IndexedValue<Double>> fun BooleanArray.withIndex(): Iterable<IndexedValue<Boolean>> fun ...

Symbol.iterator

الرمز المعروف Symbol.iterator يُحدِّد ما هو iterator التابع للكائن، وهو يستخدم من حلقة for...of. سمات الخاصية Symbol.iterator قابلة للكتابة لا قابلة للإحصاء لا قابلة للضبط لا الوصف عند الحاجة إلى المرور (iterate) على كائن (مثل في بداية حلقة التكرار for...of)، فستستدعى الدالة ‎@@iterator دون وسائط، وسيستخدم iterator المُعاد للحصول على القيم التي سنمرّ عليها في حلقة التكرار. بعض أنواع الكائنات المُضمَّنة في اللغة تحتوي على iterator افتراضي، بينما لا يملكه غيرها (الكائن Object مثلًا)؛ الدالة ‎@@iterator الموجودة في الكائنات المُضمَّنة ...

المعامل ~= في الصنف Object‎ في روبي

يتحقّق المعامل ~= من تطابق نمطي كائنين (Pattern Match). استُبدِل في الأصناف السليلة (descendants، خاصةً الصنفين Regexp و String) لتوفير دلالاتِ مطابقةِ نمطٍ واضحةٍ وذات معنى. البنية العامة obj =~ other → nil المعاملات obj الكائن المراد التحقق من تطابق نمطه مع الكائن other. other الكائن الآخر الذي سيُتحقَق من تطابق نمطه مع الكائن obj. القيم المعادة تُعاد القيمة العدمية nil إذا كان لكل كائن من الكائنين obj و ohter نمطًا مختلفًا. انظر أيضًا المعامل ~!: يتحقق من عدم تساوي ...

الدالة asIterable()‎ في Kotlin

تُنشِئ الدالة asIterable()‎نسخةً تكراريّةً (iterable instance) تُغلّف (wrap) المصفوفة الأصلية وتعيد عناصرَها عندما تُستخدَم في حلقات التكرار (مثل for). البنية العامة fun <T> Array<out T>.asIterable(): Iterable<T> fun ByteArray.asIterable(): Iterable<Byte> fun ShortArray.asIterable(): Iterable<Short> fun IntArray.asIterable(): Iterable<Int> fun LongArray.asIterable(): Iterable<Long> fun FloatArray.asIterable(): Iterable<Float> fun DoubleArray.asIterable(): Iterable<Double> fun BooleanArray.asIterable(): Iterable<Boolean> fun CharArray.asIterable(): Iterable<Char> ويمكن استدعاء الدالة asIterable()‎عبر مجموعة (collection) لتُعيدها على شكل عنصر تكراريّ (iterable): inline fun <T> Iterable<T>.asIterable(): Iterable<T> كما ويمكن استدعاء الدالة asIterable()‎عبر عنصر map وستعيد نسخةً تكراريةً (iterable instance) تُغلّف عنصر map الأصلي وتعيد مداخله (entries) ...

المعامل ==‎ الخاص بالصنف Regexp في روبي

يتحقق المعامل == من تساوي تعبيران نمطيان. تتحقق عملية التساوي من كون نمطاهما (patterns) متطابقين، وكان لهما نفس رمز مجموعة الحروف (character set code)، وكانت لهما نفس القيمة casefold?‎. البنية العامة rxp == other_rxp→ true or false‎ القيمة المعادة تُعاد القيمة true في حال كان التعبيران النمطيان متساويان، وإلا فستُعاد القيمة false. أمثلة مثال على استخدام المعامل ==‎: /abc/ == /abc/x #=> false /abc/ == /abc/i #=> false /abc/ == /abc/u #=> false /abc/u ...

خيارات المترجم في TypeScript

يوضح الجدول التالي جميع الخيارات التي يمكن استعمالها مع مترجم TypeScript للتحكم بسير عمله والتعديل على سلوكه أثناء ترجمة الشيفرات. الخيار النوع القيمة الافتراضية الوصف ‎--allowJs‎ ‎boolean‎ ‎false‎ السماح بترجمة ملفّات JavaScript. ‎--allowSyntheticDefaultImports‎ ‎boolean‎ ‎module === "system" ‎ أو أنّ الخيار ‎--esModuleInterop‎ مضبوط وقيمة ‎module‎ ليست ‎es2015‎ أو ‎esnext‎ السماح للاستيرادات الافتراضية من الوحدات التي لا تحتوي على تصديرات افتراضيّة. هذا لا يؤثر على الشيفرة المولَّدة، ويؤثر فقط على آلية التحقق من الأنواع. ‎--allowUnreachableCode‎ ‎boolean‎ ‎false‎ لا تُخبِر عن الأخطاء ...

الدالة itertools.dropwhile()‎ في بايثون

تعيد الدّالة itertools.dropwhile()‎ مُكرّرًا يُزيل العناصرَ من الكائن القابل للتّكرار المعطى ما دامت العبارة المنطقيّة المُعطاة (التي تكون دالّة تستقبل العنصر وتُعيد قيمة منطقيّة) تُساوي القيمة المنطقيّة True؛ بعد أن تُخالف العبارة المنطقيّة قيمةً منطقيّة صحيحة، يستمرّ المُكرّر بإعادة العناصر المتبقيّة كلّها. لاحظ أنّ المُكرّر لا يُنتج أي مُخرجات حتى تُساوي العبارة المنطقيّة القيمةَ False، ما يعني أنّه قد يحتاج إلى وقت طويل للبدء في إعادة القيم. البنية العامة itertools.dropwhile(predicate, iterable) المعاملات predicate العبارة المنطقيّة التي ستُحدّد ما إذا كان ...

for...of في JavaScript

التعبير البرمجي for...of يمر على الكائنات التي يمكن الدوران على عناصرها (iterable objects) بما في ذلك الكائن Array و Map و Set و String و TypedArray و Arguments، وتنفيذ تعابير برمجية معيّنة على قيمة كل خاصية من خاصيات تلك الكائنات. البنية العامة for (variable of iterable) { statement } variable ستُنسَد قيمة الخاصية مختلفة لهذا المتغير في كل دورة. iterable خاصيات الكائن القابلة للدوران (iterable properties). الوصف الفرق بين حلقتَي التكرار for...of و for...in التعبيران البرمجيان for...in و for...of يُستخدَمان للدوران ...

الدالة re.sub()‎ في بايثون‎

تبدل الدالة حالات التطابق غير المتداخلة في أقصى اليسار -والناتجة عن تطبيق التعبير النمطي المعطى على السلسلة النصية المعطاة- بسلسلة نصية أو بالقيمة المعادة من دالة. البنية العامة re.sub(pattern, repl, string, count=0, flags=0) المعاملات pattern التعبير النمطي المستخدم لإجراء عملية المطابقة. يمكن للنمط أن يكون سلسلة نصية أو كائن نمط pattern object. repl يمكن للبديل repl أن يكون سلسلة نصية أو دالة، وإن كان سلسلة نصية، فإنّ الدالة تعالج جميع المحارف المهرّبة فيها. بمعنى أنّ ‎\n تحوّل إلى محرف سطر ...

العمليات على المتغيرات في Bash

العمليات الحسابية على المتغيرات ناقشنا العمليات الحسابية من قبل في التوسعات في Bash، انظر التوسع الحسابي. طول المتغير استخدم صيغة {VAR#}$ لحساب عدد المحارف في متغير ما، وإن كان VAR هو أحد المحرفيْن * أو @ فإن القيمة يحل محلها عدد المعامِلات الموضعية أو عدد العناصر داخل المصفوفة بشكل عام، انظر المثال التالي: [hsoub in ~] echo $SHELL /bin/bash [hsoub in ~] echo ${#SHELL} 9 [hsoub in ~] ARRAY=(one two three) [hsoub in ~] echo ${#ARRAY} 3 عمليات التحول في المتغيرات الإحلال Substitution {VAR:-WORD}$ إن لم ...

الدالة itertools.tee()‎ في بايثون

تعيد الدّالة itertools.tee()‎ عددًا مُحدّدًا من المُكرّرات المُستقلّة عن بعضها البعض من كائن واحد قابل للتّكرار. البنية العامة itertools.tee(iterable, n=2) المعاملات iterable الكائن القابل للتّكرار. n عدد المُكرّرات المُستقلّة المرغوب إنشاؤها من الكائن iterable. القيمة المعادة عددٌ n من المُكرّرات المُستقلّة المُولَّدة من الكائن القابل للتّكرار المُعطى. أمثلة المثال التّالي يوضّح كيفيّة عمل هذه الدّالة: >>> it = itertools.tee('abc', 2) >>> it (<itertools._tee object at 0x7f79c6fc9f48>, <itertools._tee object at 0x7f79c4e73588>) >>> [list(i) for i in it] [['a', 'b', 'c'], ['a', 'b', 'c']] ملاحظات الدّالة ...

التابع Regexp.eql?‎‎ في روبي

يتحقق التابع eql?‎ إن كان التعبير النمطي المعطى مساويًا للتعبير النمطي الذي استُدعي معه؛ عملية التحقق من التساوي تشمل التحقق إن كان نمطاهما (patterns) متطابقان، وكان لهما نفس رمز مجموعة الحروف (character set code)، وكانت لهما نفس القيمة casefold?‎ لحالة الأحرف. البنية العامة eql?(other_rxp)→ true or false‎ المعاملات other_rxp‎ تعبير نمطي يراد التحقق من تساويه مع تعبير نمطي آخر. القيمة المعادة تعاد القيمة true إن كان التعبير النمطي other_rxp‎ مساويًا للتعبير النمطي المعطى، وإلا فستعاد القيمة false. أمثلة مثال على استخدام ...

الدالة re.compile()‎ في بايثون

تصرّف الدالة التعبير النمطي إلى كائن تعبير نمطي regex يمكن استخدامه للمطابقة بواسطة توابعه الخاصّة match()‎ و search()‎ وغيرها. البنية العامة re.compile(pattern, flag=0) المعاملات pattern التعبير النمطي المراد تصريفه. flags يمكن تحديد طريقة التعامل مع التعبير النمطي باستخدام قيم الرايات، ويمكن استخدام أكثر من راية وذلك بفصلها بعامل OR الخاص بالأعداد الثنائية (العامل |). يمكن استخدام المتغيرات التالية كقيم للمعامل flags: re.A re.ASCII يؤدي استخدام هذه الراية إلى جعل عملية المطابقة الخاصة بالتسلسلات ‎\w ،\W ،\b ،\B ،\d ،\D ،\s ...

الدالة Promise.all()‎ في JavaScript

الدالة Promise.all(iterable)‎ تُعيد وعدًا Promise وحيدًا الذي سيُقبَل (resolves) عندما تكون جميع الوعود في الوسيط iterable مقبولة، أو عندما يكون المعامل iterable لا تحتوي على أيّ وعود. وسيُرفَض مع سبب أول وعد مرفوض. var promise1 = Promise.resolve(3); var promise2 = 42; var promise3 = new Promise(function(resolve, reject) { setTimeout(resolve, 100, 'foo'); }); Promise.all([promise1, promise2, promise3]).then(function(values) { console.log(values); }); // Array [3, 42, "foo"] البنية العامة Promise.all(iterable); المعاملات iterable كائن قابل للتكرار (iterable) مثل Array أو String. القيمة المعادة وعد Promise مقبول (already resolved) إذا ...

الدالة itertools.islice()‎ في بايثون

تعيد الدّالة itertools.islice()‎ مُكرّرًا يُعيد عناصر مُنتقاة من الكائن القابل للتّكرار المُعطى. تُنتقى العناصر بتقطيع الكائن القابل للتّكرار حسب المُعاملات المُعطاة للدّالة. البنية العامة itertools.islice(iterable, stop) itertools.islice(iterable, start, stop[, step]) المعاملات iterable الكائن القابل للتّكرار المرغوب تقطيع عناصره. start مُعامل اختياريّ يُمثّل نقطة البداية، إن كانت قيمتها لا تُساوي الصّفر، فستُتجاهل عناصر الكائن iterable إلى حين الوصول إلى العنصر الذي يُوافق فهرسه (index) قيمة start. stop مُعامل يُحدّد نقطة التّوقف، إن كانت قيمتُه القيمةَ None فسيستمرّ التّكرار إلى حين انتهاء قيم ...

مطابقة الأنماط باستخدام ميزات Bash

مدى المحارف Character Ranges خلافًا لأمر grep والتعابير النمطية (regular expressions) فإن لدينا حالات كثيرة لمطابقة الأنماط التي يمكنك إجراؤها في الصدفة مباشرة دون الحاجة إلى استخدام برنامج خارجي، فلعلك تعلم أن محرفي * و ? يطابقان أي نص أو محرف وحيد -على الترتيب-، ومن أجل مطابقة هذين المحرفيْن تحديدًا، ضع حول كل منهما علامات اقتباس مزدوجة: hsoub ~> touch "*" hsoub ~> ls "*" * يمكنك استخدام الأقواس المربعة لمطابقة أي محرف أو مجموعة محارف بداخل تلك الأقواس إن فُصلت أزواج المحارف ...

الدالة itertools.takewhile()‎ في بايثون

تعيد الدّالة itertools.takewhile()‎ مُكرّرًا يُعيد العناصرَ من الكائن القابل للتّكرار المعطى ما دامت العبارة المنطقيّة المُعطاة (التي تكون دالّة تستقبل العنصر وتُعيد قيمة منطقيّة) تُساوي القيمة المنطقيّة True. تعمل هذه الدّالة بطريقة مُعاكسة للدّالة itertools.dropwhile()‎ التّي تبدأ في إعادة القيم عند عدم تحقّق شرط العبارة المنطقيّة. البنية العامة itertools.takewhile(predicate, iterable) المعاملات predicate العبارة المنطقيّة التي ستُحدّد ما إذا كان المُكرّر سيتوقّف أو لا. عادة ما تكون دالّة تستقبل العنصر، إن أعادت القيمة True فسيُعاد العنصر، وما إن تُعيد القيمةَ False ...

الدالة ‎‎Array.iterator()‎ في Kotlin

تعيد الدالة Array.iterator()‎ عنصرًا تكراريًّا (iterator) بهدف تكرار بنيةٍ (block) برمجيةٍ على كافّة عناصر المصفوفة. البنية العامة operator fun iterator(): Iterator<T> ويُلاحظ وجود الكلمة المفتاحية operator للدلالة على أنّ هذه الدالة مرتبطٌ بمعامل التكرار (iteration operator) المستخدم في شيفرة المثال اللاحق. القيم المعادة يعاد عنصرٌ تكراريٌّ (iterator) بهدف تكرار بنيةٍ (block) برمجيةٍ على كافّة عناصر المصفوفة. أمثلة تنشِئ الشيفرة الآتية مصفوفةً من ستة أعدادٍ صحيحةٍ بالاعتماد على الدالة arrayOf ثم تخصِّص لهذه المصفوفة عنصرًا تكراريًا (iterator) باستخدام الدالة iterator()‎ لاستخدامه في ...

الدالة withIndex()‎ في Kotlin

تعيد الدالة withIndex()‎ مجموعة تكرارية خاملة (lazy Iterable) من القيم المُفهرسة لكل محرف من محارف السلسلة التي استُدعيت معها. البنية العامة fun CharSequence.withIndex(): Iterable<IndexedValue<Char>> القيم المعادة تعاد مجموعة تكرارية خاملة (lazy Iterable) من القيم المُفهرسة لكل محرف من محارف السلسلة المعطاة. أمثلة مثالٌ على استعمال الدالة ()withIndex مع سلسلة نصية ثم إسناد الناتج الذي تعيده إلى المتغير iter، لاستخدامه في حلقة تكرارية for: fun main(args: Array<String>) { val iter = "hsoub".withIndex() for (x in iter) println(x) // المخرجات ...

الدالة intersect()‎ في Kotlin

تبحث الدالة intersect()‎ عن العناصر المشتركة بين مصفوفتين أو مجموعتين ثمَّ تعيدها في مجموعة. تحافظ المجموعة المُعادة على ترتيب تكرار المصفوفة أو المجموعة الأصلية. البنية العامة يمكن استدعاء الدالة intersect()‎ مع المصفوفات والمجموعات: infix fun <T> Array<out T>.intersect( other: Iterable<T> ): Set<T> infix fun ByteArray.intersect( other: Iterable<Byte> ): Set<Byte> infix fun ShortArray.intersect( other: Iterable<Short> ): Set<Short> infix fun IntArray.intersect(other: Iterable<Int>): Set<Int> (source) infix fun LongArray.intersect( other: Iterable<Long> ): Set<Long> infix fun FloatArray.intersect( ...

الدالة itertools.cycle()‎ في بايثون

تعيد الدّالة itertools.cycle()‎ مُكرّرًا يُعيد عناصر الكائن القابل للتّكرار المُعطى ويحفظ نسخة منه، عندما تنتهي قيم الكائن القابل للتّكرار، يُعيد المُكرّر عناصر النّسخة المحفوظة، ويُكرّر ذلك مرارًا وتكرارًا دون نهاية. البنية العامة itertools.cycle(iterable) المعاملات iterable الكائن القابل للتّكرار المرغوب الدّوران على قيمه بشكل لا نهائيّ. القيمة المعادة مُكرّر يُعيد قيم الكائن المُعطى مرارًا وتكرارًا. أمثلة المثال التّالي يوضّح كيفيّة عمل هذه الدّالة، لاحظ استعمال الدّالة next‎()‎ للوصول إلى القيمة المواليّة في المُكرّر، وهذا لأنّ المُكرّر النّاتج لا متناهٍ، وتحويله إلى ...

المتغير التكراري في PHP

إن المتغير التكراري Iterable هو شبه نوع (نوع زائف، pseudo-type) عُرِّفَ في الإصدار 7.1 من PHP وهو يقبل أية مصفوفة أو كائن يستخدم واجهة Traversable (أي Traversable interface)، كلا النوعين يمكن تكراره باستخدام حلقة foreach ويمكن أن يُستخدم مع تعبير yield داخل دالة مولِّدة (generator). استخدام Iterables يمكن استخدام Iterable كنوع لمعاملات الدالة (function parameter type) للإشارة إلى الدالة تتطلب مجموعةً من القيم، لكن دون أن تهتم لصيغة القيمة لأنها ستُستخدَم مع حلقة foreach، إذا لم تكن القيم مصفوفة أو ...

المتغير التكراري في PHP

إن المتغير التكراري Iterable هو شبه نوع (نوع زائف، pseudo-type) عُرِّفَ في الإصدار 7.1 من PHP وهو يقبل أية مصفوفة أو كائن يستخدم واجهة Traversable (أي Traversable interface)، كلا النوعين يمكن تكراره باستخدام حلقة foreach ويمكن أن يُستخدم مع تعبير yield داخل دالة مولِّدة (generator). استخدام Iterables يمكن استخدام Iterable كنوع لمعاملات الدالة (function parameter type) للإشارة إلى الدالة تتطلب مجموعةً من القيم، لكن دون أن تهتم لصيغة القيمة لأنها ستُستخدَم مع حلقة foreach، إذا لم تكن القيم مصفوفة أو ...

عرض (250 السابقة | 250 التالية) (20 | 50 | 100 | 250 | 500).