Mohssen A Mohssen نشر 6 سبتمبر 2022 أرسل تقرير نشر 6 سبتمبر 2022 لدي مجموعة من العبارات وأريد أن أحصل على جزء من كل عبارة، كل واحدة تحتوي على مجموعة من الكلمات وأريد أن أحصل على كل النص الذي يأتي بعد كلمة معينة: my_str = "hello,world! I'm a programmer" في الجملة السابقة أريد الحصول على كل النص الذي يأتي بعد كلمة "world" أي يجب أن تكون النتيجة "I'm a programmer !" كيف أقوم بذلك؟ 1 اقتباس
1 Ayoub Souad نشر 6 سبتمبر 2022 أرسل تقرير نشر 6 سبتمبر 2022 (معدل) ربما تكون أسهل طريقة هي مجرد تقسيم النص الى عبارات انطلاقا من كلمة محددة باستعمال وظيفة split. الوظيفة هي: str.split(sep, maxsplit) استخدم الوسيطة sep لتحديد مكان حدوث الانقسام. استخدم وسيطة maxsplit لتحديد عدد الانقسامات. my_str = "hello,world! I'm a programmer" print(my_str.split("world",1)[1]) # قسمنا السلسلة عبر كلمة ة وورلد و حددنا عدد الانقسامات في واحد ثم أخذنا العنصر المحصل عليه الثاني لقراءة المزيد عن هذه الوظيفة من هنا تم التعديل في 6 سبتمبر 2022 بواسطة Ayoub Souad اقتباس
1 علي عبد محسن نشر 6 سبتمبر 2022 أرسل تقرير نشر 6 سبتمبر 2022 يمكنك إقتطاع النص بأكثر من طريقة نذكر منها التعبير النمطي (regex (regular expression. في لغة بايثون توجد الأداة re سنستخدمها في المثال القادم لإستخلاص النص المرغوب بدلالة جزء معين من النص string. import re # إستيراد الأداة txt = "hello,world! I'm a programmer" # النص المراد معالجته x = re.search("(?<=hello,world).*", txt) # إقتطاع الجزء غير المرغوب به result= x.group(0) # حفظ النص المستخلص في متغير print( result ) # => ! I'm a programmer #طباعة النص المستخلص # ?<= or look behind #يسمى بطريقة النظر الى الخلف وظيفته بدء البحث عن النص ابتداءً من جزء نصي معين #.* #رمز النقطة يشير الى أي رمز نصي #النجمة لتكرار الشيء الذي قبلها لاحظ أننا أجرينا البحث بدلالة hello,world لتضييق دائرة البحث عندما يكون النص أطول. لكن البحث بدلالة world فقط سيعطي أيضا النتيجة ذاتها في مثالك الذي إستخدمناه للتوضيح. ومنه تفهم أنك تعدل نطاق البحث بحسب الحاجة. اقتباس
السؤال
Mohssen A Mohssen
لدي مجموعة من العبارات وأريد أن أحصل على جزء من كل عبارة، كل واحدة تحتوي على مجموعة من الكلمات وأريد أن أحصل على كل النص الذي يأتي بعد كلمة معينة:
في الجملة السابقة أريد الحصول على كل النص الذي يأتي بعد كلمة "world" أي يجب أن تكون النتيجة "I'm a programmer !"
كيف أقوم بذلك؟
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.