تنظيف النصوص للذكاء الاصطناعي باستخدام Regex
إزالة وسوم HTML وعلامات الترقيم وعناوين URL ورسائل البريد الإلكتروني — وبناء دوال معالجة النصوص مسبقًا.
تنظيف النصوص للذكاء الاصطناعي باستخدام Regex درس مجاني في Learn AI with Python على CoddyKit. هذا هو الدرس 4 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Learn AI with Python، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Learn AI with Python 4 دروس في المجموع.
لماذا ننظّف النص من أجل الذكاء الاصطناعي؟
النص الخام من الويب مليء بالضوضاء: وسوم HTML، وعناوين URL، ورسائل بريد إلكتروني، ومسافات بيضاء زائدة، ومحارف خاصة. إن تزويد نموذج بذلك يهدر قدرته ويؤثر سلبًا في الجودة.
تُعد Regex الأداة الأساسية في المعالجة المسبقة للنص. سنبني مسار تنظيف خطوةً بخطوة.
عينة فوضوية
إليكم نوع السلسلة النصية التي قد تستخرجونها من الويب. تستهدف كل خطوة تنظيف نوعًا واحدًا من الضوضاء.
raw = "<p>Contact us at info@shop.com or visit https://shop.com NOW!!! Thanks</p>"إزالة وسوم HTML
تبدو وسوم HTML مثل <tag>. يطابق النمط <[^>]+> محرف <، ثم أي محارف لا تساوي >، ثم المحرف >.
استبدلوها بسلسلة نصية فارغة. (بالنسبة إلى HTML المعقّد، يُفضّل استخدام محلّل مثل BeautifulSoup، لكن Regex مناسب للتنظيف السريع.)
import re
text = re.sub("<[^>]+>", "", raw)
print(text) # "Contact us at info@shop.com or visit https://shop.com NOW!!! Thanks"إزالة عناوين URL
تبدأ عناوين URL بـ http:// أو https://، ويتبعها عدد من المحارف غير الفارغة. طابقوها وأزيلوها.
import re
text = re.sub("https?://\S+", "", text)
print(text) # URL removedإزالة عناوين البريد الإلكتروني
نمط بسيط للبريد الإلكتروني: محارف كلمات، ثم @، ثم نطاق، ثم نقطة، ثم نطاق علوي.
import re
text = re.sub("\S+@\S+\.\S+", "", text)
print(text) # email removedإخفاء البيانات بدلًا من إزالتها
في مجموعات بيانات الخصوصية، غالبًا ما تُخفى البيانات الحساسة بدلًا من حذفها، مع الحفاظ على بنية الجملة.
import re
masked = re.sub("\S+@\S+\.\S+", "[EMAIL]", "reach me at a@b.com please")
print(masked) # "reach me at [EMAIL] please"إزالة المحارف الخاصة
احتفظوا بالحروف والأرقام والمسافات، واحذفوا علامات الترقيم والرموز باستخدام مجموعة منفية. حدّدوا لكل مهمة ما إذا كان ينبغي الاحتفاظ ببعض علامات الترقيم.
import re
text = re.sub("[^A-Za-z0-9 ]", "", "Hello!! @world #2026")
print(text) # "Hello world 2026"توحيد المسافات البيضاء
يخلّف التنظيف مسافات مزدوجة وأسطرًا جديدة زائدة. ادمجوا أي تتابع من المسافات البيضاء في مسافة واحدة باستخدام \s+، ثم طبّقوا strip() على الطرفين.
import re
text = re.sub("\s+", " ", "Hello world\n\n again").strip()
print(text) # "Hello world again"تحويل الأحرف إلى صغيرة وأهمية الترتيب
يُستخدم تحويل الأحرف إلى صغيرة عادةً لتحقيق الاتساق، لكن طبّقوه بحذر. كذلك، الترتيب مهم: أزيلوا وسوم HTML قبل إزالة المحارف الخاصة، ووحّدوا المسافات البيضاء أخيرًا حتى لا تترك عمليات الإزالة السابقة فجوات.
text = text.lower()
# Pipeline order: tags -> urls -> emails -> specials -> whitespace -> lowercaseبناء مسار تنظيف
اجمعوا الخطوات في دالة واحدة حتى يحصل كل مستند على المعالجة نفسها. جمّعوا الأنماط مسبقًا لتحسين السرعة عند معالجة عدد كبير من المستندات.
import re
def clean_text(s):
s = re.sub("<[^>]+>", " ", s) # html tags
s = re.sub("https?://\S+", " ", s) # urls
s = re.sub("\S+@\S+\.\S+", " ", s) # emails
s = re.sub("[^A-Za-z0-9 ]", " ", s) # special chars
s = re.sub("\s+", " ", s).strip() # whitespace
return s.lower()
print(clean_text(raw))تطبيق المسار على DataFrame
شغّلوا أداة التنظيف على عمود نصي كامل باستخدام apply، لإنشاء عمود جاهز للنموذج.
import pandas as pd
df["clean"] = df["text"].apply(clean_text)
print(df[["text", "clean"]].head())اختبار سريع: توحيد المسافات البيضاء
بعد التنظيف، يحتوي النص على تتابعات من مسافات وأسطر جديدة متعددة تريدون دمجها في مسافات مفردة.
مراجعة: تنظيف النص باستخدام Regex
لقد بنيتم مسار معالجة مسبقة فعليًا:
- إزالة وسوم HTML باستخدام
<[^>]+> - إزالة عناوين URL (
https?://\S+) ورسائل البريد الإلكتروني - إخفاء البيانات الحساسة باستخدام عناصر نائبة مثل
[EMAIL] - حذف المحارف الخاصة باستخدام مجموعة منفية
- توحيد المسافات البيضاء باستخدام
\s++strip() - وضع ذلك في دالة وتطبيق
applyعليها في عمود
وبذلك تكتمل آلية Regex لنصوص الذكاء الاصطناعي. التالي: قواعد البيانات لمشروعات الذكاء الاصطناعي.
الأسئلة الشائعة
هل درس «تنظيف النصوص للذكاء الاصطناعي باستخدام Regex» مجاني؟
نعم — نص درس «تنظيف النصوص للذكاء الاصطناعي باستخدام Regex» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Learn AI with Python، انتقل إلى CoddyKit PRO. تتضمن دورة Learn AI with Python 4 دروس في المجموع.
ماذا ستتعلم في «تنظيف النصوص للذكاء الاصطناعي باستخدام Regex»؟
إزالة وسوم HTML وعلامات الترقيم وعناوين URL ورسائل البريد الإلكتروني — وبناء دوال معالجة النصوص مسبقًا. تتمرن على Learn AI with Python مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Learn AI with Python؟
لا تُشترط خبرة سابقة. Learn AI with Python على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 4 من أصل 4.
كم من الوقت يستغرق درس «تنظيف النصوص للذكاء الاصطناعي باستخدام Regex»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Learn AI with Python هذا؟
نعم. كل درس في Learn AI with Python يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- أنماط Regex وفئات المحارف
- وحدة re: search وmatch وfindall وsub
- مجموعات الالتقاط والمجموعات المسماة
- تنظيف النصوص للذكاء الاصطناعي باستخدام Regex