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

كيف يمكنني تقسيم السلاسل إلى كلمات باستخدام محددات حدود الكلمات المتعددة في بايثون؟

تم النشر بتاريخ 2024-12-23
تصفح:167

How Can I Split Strings into Words Using Multiple Word Boundary Delimiters in Python?

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

عند التعامل مع البيانات النصية، تتضمن المهمة الشائعة تقسيم السلاسل إلى كلمات فردية. تقدم طريقة str.split()‎ في Python حلاً مباشرًا، ولكنها تدعم فقط محددًا واحدًا كوسيطة لها. يمكن أن يصبح هذا القيد عائقًا عند التعامل مع نص يحتوي على أنواع متعددة من حدود الكلمات، مثل علامات الترقيم.

توفر وحدة Python re بديلاً قويًا: re.split(). تتيح لك هذه الوظيفة تحديد نمط لاستخدامه كمحدد لحدود الكلمة. يمكن أن يتضمن النمط تعبيرات عادية لمطابقة أنواع متعددة من الحدود في وقت واحد.

على سبيل المثال، لتقسيم السلسلة التالية إلى كلمات، والتعامل مع كل من المسافات البيضاء وعلامات الترقيم كحدود للكلمات:

"Hey, you - what are you doing here!?"

يمكنك استخدام نمط التعبير العادي التالي:

'\W '

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

إليك كيفية استخدامه في بايثون:

import re

text = "Hey, you - what are you doing here!?"
words = re.split('\W ', text)

print(words)

الإخراج:

['Hey', 'you', 'what', 'are', 'you', 'doing', 'here']

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

أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3