مراجعة - محلل ملفات السجل
جزء من قسم Logic & Flow في رحلة Lua على Coddy — الدرس 40 من 54.
التحدي
سهلاكتب دالة parseLogEntry تأخذ logEntry وتعيد معلومات السجل المستخرجة في سلسلة نصية منسقة.
استخدم string.match() مع التقاطات متعددة لاستخراج مستوى السجل (بين أقواس)، ونص الرسالة، والمعرف الرقمي من إدخال السجل. أعد هذه المعلومات الثلاث مفصولة بفاصلات.
المنطق:
- استخدم نمطاً بثلاثة التقاطات: واحد لمستوى السجل داخل الأقواس، وواحد لنص الرسالة، وواحد للمعرف الرقمي
- مستوى السجل عبارة عن أحرف كبيرة داخل أقواس مربعة
- الرسالة هي النص الموجود بين النقطتين والمعرف الرقمي
- المعرف هو رقم واحد أو أكثر في النهاية
- أعد القيم الثلاث الملتقطة بالتنسيق:
level,message,id
المعاملات:
logEntry(string): إدخال سجل بالتنسيق[LEVEL]: Message text ID
المخرجات: المعلومات المستخرجة كـ level,message,id (string)
جرّب بنفسك
function parseLogEntry(logEntry)
-- اكتب الكود هنا
end
جميع دروس Logic & Flow
1التكرار المتقدم عبر الجداول
التكرار باستخدام pairs()التكرار باستخدام ipairs()pairs() مقابل ipairs()مراجعة - ورقة الشخصية4مقدمة إلى Metatables
ما هو الـ Metatable؟setmetatable و getmetatableالـ Metamethod المسماة __indexالـ Metamethod المسماة __newindexالـ Metamethod المسماة __tostringالـ Metamethods الحسابية - الجزء الأولالـ Metamethods الحسابية - الجزء الثانيملخص - جدول للقراءة فقط7معالجة النصوص المتقدمة
استخدام string.gsub() للاستبدالمقدمة في أنماط النصوصstring.find()string.match()التكرار باستخدام string.gmatch()مراجعة - محلل ملفات السجل2المزيد من دوال مكتبة Table
table.concat()إنشاء الجداول و unpack()table.sort()فرز مخصص باستخدام الدوالمراجعة - لوحة أعلى النتائج