نتائج البحث

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

التعابير النمطية في Bash

يلقي هذا الباب الضوء على المزايا المُضمَّنة في Bash لمطابقة الأنماط (patterns) والتعرف على فئات المحارف ومداها. إضافة إلى تفصيل للتعابير النمطية (Regular Expressions)، إذ هي أدوات قوية لاختيار أسطر بعينها من ملفات أو من مُخرج ما، وتستخدمها أوامر كثيرة في يونكس مثل vim و perl وقاعدة بيانات PotgreSQL وغيرها، كما يمكن إضافتها في أي لغة أو تطبيق باستخدام مكتبات خارجية، بل قد تجدها في أنظمة غير أنظمة يونكس، إذ يستخدمها برنامج Excel للجداول الذي يأتي في حزمة مكتب ويندوز. ...

الوسيط (Middle Man)

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

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

(PHP 4 >= 4.0.5, PHP 5, PHP 7) تبحث الدالة preg_replace_callback()‎‎ عن تعبير نمطي وتستبدله باستخدام دالة مُعرَّفة من المستخدم. الوصف mixed preg_replace_callback ( mixed $pattern , callable $callback , mixed $subject [, int $limit= -1 [, int &$count ]] ) يتطابق سلوك هذه الوظيفة تقريبًا مع الدالة preg_replace()‎‎، باستثناء أنه يجب تحديد الدالة المُعرَّفة من المستخدم callback بدلاً من المعامل replacement. المعاملات pattern النمط المراد البحث عنه. ويمكن أن يكون إما سلسلةً نصيةً أو مصفوفةً من السلاسل النصية. callback الدالة ...

Python/pathlib/PurePath/match

 التابع PurePath.match يختبر هذا التابع مطابقة المسار لنمط اختبار المطابقة glob المعطى. البنية العامة تبدأ المطابقة من اليمين، ويمكن أن يكون النمط المعطى نسبيًّا وعندها بُمكن أن يكون المسار نسبيًّا أو مُطلقًا >>> PurePath('a/b.py').match('*.py') True >>> PurePath('/a/b/c.py').match('b/*.py') True >>> PurePath('/a/b/c.py').match('a/*.py') False أما إذا كان النمط مُطلقًا، فلا بد أن يكون المسار مُطلقًا أيضًا وأن يتطابق كامل المسار مع النمط >>> PurePath('/a.py').match('/*.py') True >>> PurePath('a/b.py').match('/*.py') False كما أن نكهة الصنف الخاصة بويندوز لا تهتم بحالة الحروف، على عكس النكهة الخاصة بباقي الأنظمة. >>> PureWindowsPath('b.py').match('*.PY') True >>> PurePosixPath('b.py').match('*.PY') False المعاملات الوسيط pattern هو النمط المطلوب مطابقته مع ...

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

يُمرِّر التابع chunk كل عنصر من عناصر المجموعة التي استدعيت معه إلى الكتلة المعطاة ثمَّ يُقطِّعها إلى أجزاء (قطع صغيرة) بحسب القيمة المعادة من الكتلة. العناصر المتتالية التي يكون لها نفس القيمة المعادة من الكتلة هي التي تُجمَّع سويةً. القيم المفتاحية التالية لها معنًى خاص: nil و ‎:_separator: يحدِّدان بأنَّه يجب على العناصر أن تُحذَف. يمكن استعمالهما لتجاهل بعض العناصر. ‎:_alone: يحدِّد بأنه يجب على العنصر أن يُجمَّع لوحده. أية رموز أخرى تبدأ بخط سفلي (underscore) سيؤدي استعمالها إلى رمي خطأ. البنية ...

الصنف Dir في روبي

كائنات الصنف Dir هي مجاري مجلدات (directory streams) تمثِّل الجلدات في نظام الملفات الأساسي لنظام التشغيل. فهي توفر طرائق متعددة لعرض المجلدات ومحتوياتها. انظر أيضًا صفحة الصنف File لمزيد من المعلومات. يحوي المجلد المستخدم في الأمثلة الموجودة في صفحات التوابع ملفين عاديين هما: config.h و main.rb، بالإضافة إلى المجلد الأب (..) ، والمجلد نفسه (.). توابع الصنف العامة (Public Class Methods) المعامل [] يكافئ استدعاء Dir.glob([string,...], 0)‎.  chdir‎ يغيِّر مجلد العمل (working directory) الحالي للعملية الحالية إلى مجلَّدٍ محدَّدٍ. children ...

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

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

throw في JavaScript

التعبير البرمجي throw يؤدي إلى رمي استثناء (exception) يُعرِّفه المستخدم، وسيؤدي ذلك إلى توقف تنفيذ الدالة الحالية (أي أنَّ التعابير البرمجية بعد throw لن تُنفَّذ) وسينتقل التنفيذ إلى أوّل catch، وإذا لم تكن موجودةً فسينتهي تنفيذ البرنامج. البنية العامة throw expression; expression التعبير الذي سيُرمى. الوصف يُستخدَم التعبير throw لرمي استثناء، وعندما ترمي استثناءً فإنَّ قيمة expression تُحدِّد ما هي قيمة الاستثناء. أمثلة: throw 'Error2'; // توليد استثناء له قيمة نصية throw 42; // توليد استثناء ...

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

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

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

تحاول الدالة matchEntire()‎ مطابقة جميع محارف السلسلة الممررة إليها مع التعبير النمطي الذي استدعي معها. البنية العامة actual fun matchEntire(input: CharSequence): MatchResult? المعاملات input سلسلة المحارف التي يراد تطابق جميع محارفها مع التعبير النمطي المعطى. القيمة المعادة تعاد نسخةٌ من الصنف MatchResult تحتوي على جميع محارف المعامل input إن تطابقت جميع تلك المحارف مع التعبير النمطي المعطى، أو تعاد القيمة null خلاف ذلك. أمثلة استعمال الدالة matchEntire()‎ لمعرفة سلسلة المحارف المطابقة للتعبير النمطي ‎-?\d+(\.\d+)?‎ بشكل كامل: fun main(args: Array<String>) { ...

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