الانتقال إلى المحتوى الرئيسي

كيفية تحليل سلسلة في بيثون: أفضل الطرق وأمثلة التعليمات البرمجية

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

واحدة من أكثر الطرق شيوعا لتحليل السلاسل في بايثون هي استخدام التعبيرات العادية. إنها تسمح لك بتحديد قالب يمكن من خلاله البحث عن أجزاء نصية معينة. توفر مكتبة إعادة ميزات واسعة للعمل مع التعبيرات العادية في بيثون. على سبيل المثال ، يمكنك استخدام وظيفة إعادة.فيندال () للعثور على جميع التطابقات مع النمط المحدد في السلسلة.

طريقة أخرى لتحليل السلاسل في بيثون هي استخدام أساليب سلسلة مثل سبليت() أو رستريب(). طريقة سبليت () يسمح لك لتقسيم سلسلة إلى سلاسل فرعية بواسطة فاصل محدد ، والتي يمكن أن تكون مفيدة عند العمل مع ملفات كسف أو البيانات النصية. طريقة رستريب () يسمح لك بحذف حرف معين أو مجموعة من الأحرف من نهاية السطر ، والتي يمكن أن تكون مفيدة ، على سبيل المثال ، عند إزالة المسافات أو علامات الترقيم.

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

  1. طريقة الانقسام ()
  2. من التعبيرات العادية في بايثون
  3. استخدام مكتبة بيوتيفولسوب
  4. طرق السلسلة: البحث () ، الفهرس () وغيرها
  5. طرق البحث:
  6. طرق التحقق:
  7. تحليل السلسلة باستخدام وحدة إعادة
  8. سؤال وجواب
  9. كيف يمكنني تقسيم سلسلة إلى كلمات منفصلة في بيثون?
  10. كيف يمكنني تقسيم سلسلة إلى سلاسل فرعية باستخدام محددات أخرى, ليس مجرد مسافة?
  11. هل من الممكن تقسيم سلسلة إلى أحرف في بيثون?
  12. كيف يمكنني تقسيم سلسلة إلى سلاسل فرعية باستخدام التعبيرات العادية في بيثون?

طريقة الانقسام ()

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

يبدو أبسط شكل من أشكال طريقة الانقسام () كما يلي:

سلسلة.انقسام()

إذا لم تحدد فاصلا بين قوسين ، فستقوم طريقة الانقسام () بتقسيم السلسلة بمسافات أو مجموعات من المسافات. على سبيل المثال:

سلسلة = "هذه سلسلة مفصولة بمسافات"

النتيجة = سلسلة.انقسام()

طباعة (نتيجة)

الناتج:

['هذا' ، 'سلسلة' ، 'فصل' ، 'بواسطة' ، 'مسافات']

إذا أردنا تحديد الفاصل الخاص بنا ، فيمكننا تمريره كوسيطة لطريقة الانقسام (). على سبيل المثال ، إذا أردنا تقسيم سلسلة بفواصل ، فإننا نقوم بذلك على النحو التالي:

سلسلة = "فاصل ، فاصلة ، سلسلة"

النتيجة = سلسلة.انقسام ("،")

طباعة (نتيجة)

الناتج:

['فاصل' ، 'فاصلة' ، 'سلسلة']

يمكنك أيضا استخدام طريقة الانقسام () لتحديد الحد الأقصى لعدد الانقسامات التي يتعين القيام بها. للقيام بذلك ، قم بتمرير الوسيطة الثانية إلى طريقة الانقسام () — عدد الانقسامات. على سبيل المثال:

سلسلة = "فاصل ، فاصلة ، سلسلة"

النتيجة = سلسلة.انشق ، مزق (",", 1)

طباعة (نتيجة)

الناتج:

['فاصل' ، 'فاصلة ، سلسلة']

طريقة الانقسام () مفيدة للغاية عندما تحتاج إلى تحليل سلسلة إلى كلمات أو عناصر منفصلة موجودة فيها ، ثم معالجتها.

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

التعبيرات العادية في بايثون

التعبيرات العادية (التعبير العادي) هي أداة قوية للعمل مع البيانات النصية في بيثون. تسمح لك بالبحث عن النص واستبداله ومعالجته باستخدام قوالب خاصة.

. توفر هذه الوحدة وظائف وطرق للعمل مع النظامي.

:

  1. .
  2. .
  3. وأرجعهم كقائمة.
  4. .

يتم استخدام الأحرف الخاصة والأحرف الأولية لإنشاء القوالب. وهنا بعض منهم:

الرمزالوصف.
أي حرف آخر غير حرف السطر الجديد[حروف]
أي من الشخصياتc
أي حرف في النطاق منz
أي حرف باستثناء الأحرفc
أي رقم\ د
أي حرف آخر غير رقم\ ث
أي رقم أو حرف (بما في ذلك الشرطة السفلية)\ ث
أي حرف آخر غير رقم والرسالة\ ق
أي حرف الفضاء\ ق
أي حرف غير مسافة بيضاء^
بداية السطر$
نهاية الخطعلى سبيل المثال ، التعبير

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

استخدام مكتبة بيوتيفولسوب

بوتيفولسوب هي مكتبة لتحليل وثائق هتمل و شمل في بيثون. يسمح لك باستخراج البيانات بسهولة ويسر من صفحات الويب ، والعثور على العناصر والسمات الضرورية. يوفر بيوتيفولسوب طريقتين رئيسيتين للبحث واستخراج البيانات:

البحث عن العلامات والسمات:

'''

حساء = بوتيفولسوب (أتش تي أم أل ، 'أتش تي أم أل.محلل')

    • # البحث عن جميع العناصر مع فئة "الوصف"
  • الوصف = حساء.حدد ('.الوصف')
    • # ابحث عن سلف العنصر
    • الجسم = حساء.اختر ('ح1 ~ ف')
    • # ابحث عن سليل العنصر
    • رابط = حساء.حدد ('الجسم أ')

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

  • وبالإضافة إلى ذلك ، بوتيفولسوب يوفر القدرة على تعديل وثيقة ، إضافة وتعديل العناصر ، فضلا عن تنفيذ عمليات أخرى مع بيانات هتمل و شمل.
    • باستخدام مكتبة بوتيفولسوب يجعل عملية تحليل صفحات الويب أبسط وأكثر ملاءمة ، مما يسمح لك بسهولة استخراج وتحليل المعلومات اللازمة. إنها واحدة من أكثر المكتبات شيوعا للتحليل في بايثون ويوصى باستخدامها في المشاريع المتعلقة بتجريف الويب وتحليل البيانات.
    • طرق السلسلة: البحث () ، الفهرس () وغيرها
  • في بايثون ، السلسلة هي نوع البيانات الرئيسي للعمل مع النص. إنها سلسلة من الشخصيات ولديها العديد من الطرق لأداء العمليات المختلفة. دعونا نلقي نظرة على بعض طرق السلسلة الأكثر فائدة.
    • طرق البحث:
    • البحث عن (الفرعية [،بداية [،نهاية]]):
  • إرجاع فهرس التكرار الأول للفرع الفرعي الفرعي في السلسلة.
    • إذا لم يتم العثور على سلسلة فرعية, إرجاع -1.
    • يمكنك تحديد فهارس البحث الأولية والنهائية.
  • الفهرس (الفرعي [،البداية [،النهاية]]):
    • إرجاع فهرس التكرار الأول للفرع الفرعي الفرعي في السلسلة.
    • إذا لم يتم العثور على السلسلة الفرعية ، يتم طرح استثناء فالويرور.
  • يمكنك تحديد فهارس البحث الأولية والنهائية.
    • العد (الفرعية [،بداية [،نهاية]]):
    • إرجاع عدد التكرارات المنفصلة للفرع الفرعي الفرعي في سلسلة.
  • يمكنك تحديد فهارس البحث الأولية والنهائية.
    • يبدأ مع (الفرعية [،بداية [،نهاية]]):
    • يتحقق ما إذا كانت السلسلة تبدأ مع الفرعية الفرعية.

يمكنك تحديد فهارس البداية والنهاية الأولية للتحقق.

يعود صحيحة أو خاطئة.

ينتهي مع (الفرعية [،بداية [،نهاية]]):

يتحقق مما إذا كانت السلسلة تنتهي بسلسلة فرعية من الباطن.

يمكنك تحديد فهارس البداية والنهاية الأولية للتحقق.

يعود صحيحة أو خاطئة.

طرق التحقق:

يتحقق مما إذا كانت السلسلة تحتوي على أحرف فقط.

يتحقق مما إذا كانت السلسلة تحتوي على أرقام فقط.

يعود صحيحة أو خاطئة.

إسلو():

يتحقق مما إذا كانت السلسلة تحتوي على أحرف صغيرة فقط.

يعود صحيحة أو خاطئة.

إيسوبر():

يتحقق مما إذا كانت السلسلة تحتوي على أحرف كبيرة فقط.

يعود صحيحة أو خاطئة.

إيسبيس():

يتحقق مما إذا كانت السلسلة تحتوي على أحرف بيضاء فقط.

يعود صحيحة أو خاطئة.

هذه ليست سوى بعض من العديد من الأساليب سلسلة المتاحة في بيثون. سيساعدك تعلم واستخدام هذه الأساليب على العمل بشكل أكثر فعالية مع البيانات النصية.

تحليل السلسلة باستخدام وحدة إعادة

توفر وحدة إعادة الثعبان ميزات للعمل مع التعبيرات العادية. يسمح لك بالبحث ومعالجة السلاسل بناء على قوالب محددة.

لاستخدام وحدة إعادة ، يجب عليك أولا استيراده:

استيراد إعادة

الخطوة التالية هي إنشاء تعبير عادي يصف نمط السلسلة. على سبيل المثال ، للعثور على جميع الأرقام في سلسلة ، يمكنك استخدام التعبير التالي:

نمط = ص ' \ د+'

هنا

\ د

يعني أي رقم ، و

+

- تكرار واحد أو أكثر للشخصية السابقة.

لإجراء بحث استنادا إلى قالب معين ، استخدم

إعادة.فيندال () وظيفة

. تقوم بإرجاع قائمة بجميع التطابقات التي تم العثور عليها:

شارع = "هناك أرقام في هذا السطر: 42 و 1337 و 3.14"

مباريات = إعادة.فيندال (نمط ، شارع)

طباعة (مباريات)

الناتج: