البرمجة

استخدام تعابير النمط العادية في Linux وUnix لتحليل وتعديل النصوص

في عالم أنظمة التشغيل مثل Linux وUnix، وفي سياق استخدام تعابير النمط العادية (Regex)، يمكن تحقيق عمليات معقدة لاستخراج البيانات وتعديلها بشكل فعال. في هذا السياق، سنقوم بمناقشة كيفية استخدام تعابير النمط العادية لاستخراج الأرقام الموجودة بين القوسين، ثم تعديل هذه القيم وتحديث النص بشكل ذكي.

للقيام بذلك، يمكننا استخدام أدوات مثل sed في نظام Linux. سنقوم بكتابة تعبير مناسب لاستخراج الأرقام بين القوسين في النص. بعد ذلك، سنقوم بحساب القيمة الجديدة (القيمة القديمة مضروبة في العامل المتغير) ونقوم بتحديث القيمة القديمة في النص.

على سبيل المثال، نستخدم الأمر التالي:

bash
sed -E 's/\(([0-9]+)\);/(\1 * 300);/g' filename.txt > newfile.txt

تفسير الأمر:

  • sed: الأداة المستخدمة لتحرير النصوص.
  • -E: يفيد في استخدام تعابير النمط العادية الموسعة.
  • s/\(([0-9]+)\);/(\1 * 300);/g: يقوم بالبحث عن النص الذي يتطابق مع النمط المحدد (أي نص بين قوسين يحتوي على أرقام) ويقوم بتحويله إلى النمط الجديد الذي يضرب القيمة القديمة في 300.
  • filename.txt: اسم الملف الذي يتم تحريره.
  • > newfile.txt: يقوم بتوجيه النتيجة إلى ملف جديد.

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

المزيد من المعلومات

في سعينا لفهم العملية بشكل أفضل وتوفير مزيد من المعلومات حول كيفية استخدام تعابير النمط العادية لتحليل النصوص وتعديلها في سياق نظم Linux وUnix، يمكننا التركيز على تفاصيل الأمر الذي تم استخدامه وفهم كيف يعمل.

الأمر sed الذي تم استخدامه هو أداة قوية لتحرير النصوص في نظم Unix وLinux. دعونا نفحص أجزاء الأمر لفهمها بشكل أفضل:

  1. sed: هو اسم الأداة التي نستخدمها، والتي تعتبر اختصارًا لـ Stream Editor، حيث يقوم بتحرير وتعديل محتوى النصوص.

  2. -E: يشير إلى استخدام تعابير النمط العادية الموسعة، مما يتيح لنا استخدام بعض الصيغ المتقدمة في تعابير البحث والاستبدال.

  3. s/\(([0-9]+)\);/(\1 * 300);/g: هذا هو الجزء الرئيسي من الأمر ويُعتبر النمط الذي نقوم بالبحث عنه واستبداله. تفسيره هو كالتالي:

    • s/: يعني بداية جملة استبدال.
    • \(: يستخدم للبحث عن فتح القوس.
    • [0-9]+: يعني البحث عن أي رقم يتكرر واحد أو أكثر مرات.
    • \) : يستخدم للبحث عن إغلاق القوس.
    • ;: يبحث عن الفاصلة ونقطة الانهاء بين الأرقام والرغبة في استبدالها.
    • /(\1 * 300);/: هذا هو النمط الذي سيقوم بتبديل الجزء الذي تم العثور عليه. يأخذ القيمة القديمة بين القوسين ويضربها في 300.
  4. g: يشير إلى تطبيق الاستبدال على كل الحالات الممكنة في السطر، وليس فقط أول حالة.

  5. filename.txt: اسم الملف الذي يتم تحريره.

  6. > newfile.txt: يقوم بتوجيه النتيجة إلى ملف جديد ب اسم newfile.txt.

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

مقالات ذات صلة

زر الذهاب إلى الأعلى
إغلاق

أنت تستخدم إضافة Adblock

يرجى تعطيل مانع الإعلانات حيث أن موقعنا غير مزعج ولا بأس من عرض الأعلانات لك فهي تعتبر كمصدر دخل لنا و دعم مقدم منك لنا لنستمر في تقديم المحتوى المناسب و المفيد لك فلا تبخل بدعمنا عزيزي الزائر