بالتأكيد، في Python يمكنك استخدام وحدة الـ re
لتحقيق نفس النتيجة المتوقعة. يمكنك استخدام الوظيفة re.sub()
لتطبيق استبدال نمط معين بنص آخر. إليك الطريقة البسيطة لتحقيق هذا الهدف في Python:
pythonimport re
strings = ["Important text, !Comment that could be removed", "Other String"]
pattern = r",\s*!.+$" # نمط البحث عنه (بناء على نفس النمط في R)
replacement = "" # النص الذي سيتم استبدال النمط به
result = [re.sub(pattern, replacement, string) for string in strings]
print(result)
# ['Important text', 'Other String']
في هذا المثال، تم استيراد وحدة re
ثم تم تحديد النمط المطلوب باستخدام متغير pattern
، حيث يتم البحث عن أي نص يحتوي على فاصل متبوعاً بأي عدد من الفراغات ثم علامة التعجب وأي حرف آخر، وذلك باستخدام التعبير العادي r",\s*!.+$"
.
-
تطوير إضافات VS Code: قراءة وكتابة الملفات15/03/2024
-
حفظ حالة RNN بين الدفعات في TensorFlow06/03/2024
-
إنشاء صور مصغرة PDF في Android16/03/2024
ثم يتم تعيين النص الذي سيتم استبدال النمط به في المتغير replacement
، وهو في هذه الحالة فارغ.
ثم يتم استخدام قائمة التفاعل (list comprehension
) لتطبيق الاستبدال على كل عنصر في القائمة strings
، ويتم طباعة النتيجة التي ستكون ['Important text', 'Other String']
.
المزيد من المعلومات
بالطبع، هنا بعض المعلومات الإضافية حول الطريقة التي تم استخدامها:
-
وحدة الـ
re
في Python: هذه الوحدة توفر أدوات للتعامل مع التعبيرات العادية (Regular Expressions) في Python. تُستخدم هذه الأدوات للبحث والاستبدال والتلاعب بالنصوص بناءً على أنماط معينة. -
التعبير العادي (Regex): في هذه الحالة، تم استخدام التعبير العادي
r",\s*!.+$"
، الذي يعني:",\s*!"
: يبحث عن فاصل متبوع بأي عدد من الفراغات (\s*
) ثم علامة التعجب!
..+
: يبحث عن أي حرف (.
) يتكرر واحد أو أكثر (+
) بعد علامة التعجب.$
: يرمز إلى نهاية السلسلة.
-
الاستبدال: في هذه الحالة، تم تعيين النص المراد استبدال النمط به إلى سلسلة فارغة
""
. هذا يعني أن أي نص يتطابق مع النمط المحدد سيتم استبداله بسلسلة فارغة، مما يعني إزالته. -
قائمة التفاعل (List Comprehension): هي طريقة لإنشاء قوائم بشكل مختصر في Python. في هذه الحالة، تم استخدام قائمة التفاعل لتطبيق دالة
re.sub()
على كل عنصر في القائمةstrings
وإنشاء قائمة جديدة بالنتائج المعالجة.
باستخدام هذه الطريقة، يمكنك إجراء استبدالات نصية في Python بطريقة بسيطة وفعالة، مما يوفر لك نفس مرونة وقوة وظيفة gsub
في R.