اذهب إلى المحتوى

السؤال

Recommended Posts

  • 0
نشر (معدل)

word_tokenize تقوم بتقسيم النص إلى كلمات بناءاً على مكوناته بغض النظر عن ماهيتها لذا سيعتبر علامات الترقيم على أنها tokens، لذا يمكنك استخدام الكلاسRegexpTokenizer بدلاً من word_tokenize التي نمرر لبانيه تعبيراً منتظماً يتحكم بما سيتم أخذه وبما سيتم تجاهله، كما في المثال التالي الذي سنقوم فيه باستخدام هذه الوحدة وسنمرر لها تعبيراً منتظماً يختار تسلسل الأحرف الأبجدية الرقمية alphanumeric كرموز ويتجاهل كل شيء آخر.

from nltk.tokenize import RegexpTokenizer
sentence = 'Web oficial de Lionel Messi, jugador del Futbol Club Barcelona y uno de los mejores jugadores del mundo.'
tokenizer = RegexpTokenizer(r'\w+')
tokens=tokenizer.tokenize(sentence)
print(tokens)
"""
['Web', 'oficial', 'de', 'Lionel', 'Messi', 'jugador', 'del',
 'Futbol', 'Club', 'Barcelona', 'y', 'uno', 'de', 'los', 'mejores',
  'jugadores', 'del', 'mundo']
"""

أو يمكنك استخدام word_tokenize وبعد ذلك تصفية علامات الترقيم من الخرج، من خلال المرور على ال tokens ثم تقيتها من خلال الدالة isalnum التي تختبر السلسلة إذا كانت alphanumeric  أو لا:

import nltk
sentence = 'Web oficial de Lionel Messi, jugador del Futbol Club Barcelona y uno de los mejores jugadores del mundo.'
words = nltk.word_tokenize(sentence)
new_words= [word for word in words if word.isalnum()]
print(new_words)

 

تم التعديل في بواسطة Ali Haidar Ahmad

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...