المسارات
/
Clojure
Clojure
/
التمارين
/
مستويات السجل
مستويات السجل

مستويات السجل

تمرين تعلّمي

مقدمة

string في Clojure هي سلسلة نصية في Java، وهي عبارة عن كائن يمثل نصًا غير قابل للتغيير كتسلسل من محارف يونيكود (حروف، أرقام، علامات ترقيم، وما إلى ذلك)، وتُعرَّف كالتالي:

(def fruit "Apple")

مكتبة clojure.string توفّر العديد من الدوال القياسية لمعالجة السلاسل النصية والتعامل معها. بالإضافة إلى ذلك، جميع الطرق المعتادة في Java للتعامل مع السلاسل النصية متاحة عبر التشغيل البيني.

التعليمات

في هذا التمرين ستتعامل مع أسطر السجل.

كل سطر سجل هو سلسلة نصية بالتنسيق التالي: "[<LEVEL>]: <MESSAGE>".

هناك ثلاثة مستويات مختلفة للسجل:

  • INFO
  • WARNING
  • ERROR

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

1. استخراج الرسالة من سطر السجل

نفّذ الدالة message لتُرجع رسالة سطر السجل:

(message "[ERROR]: Invalid operation")
;;=> "Invalid operation"

يجب إزالة أي مسافات بيضاء في البداية أو النهاية:

(message "[WARNING]:  Disk almost full\r\n")
;;=> "Disk almost full"

2. استخراج مستوى السجل من سطر السجل

نفّذ الدالة log-level لتُرجع مستوى السجل الخاص بسطر السجل، ويجب إرجاعه بأحرف صغيرة:

(log-level "[ERROR]: Invalid operation")
;;=> "error"

3. إعادة تنسيق سطر السجل

نفّذ الدالة reformat التي تعيد تنسيق سطر السجل، بوضع الرسالة أولًا ثم مستوى السجل بعدها بين الأقواس الهلالية:

(reformat "[INFO]: Operation completed")
;;=> "Operation completed (info)"
تعديل عبر GitHub يفتح الرابط في نافذة أو علامة تبويب جديدة
Clojure Exercism

مستعد لبدء مستويات السجل؟

سجّل في Exercism لتتعلّم وتتقن Clojure عبر 12 مفهومًا105 تمارين، وإرشاد بشري حقيقي، وكل ذلك مجانًا.