J'utilise regexp_tokenize()
pour revenir jetons d'un texte arabe sans signes de ponctuation:regexp_tokenize et texte arabe
import re,string,sys
from nltk.tokenize import regexp_tokenize
def PreProcess_text(Input):
tokens=regexp_tokenize(Input, r'[،؟!.؛]\s*', gaps=True)
return tokens
H = raw_input('H:')
Cleand= PreProcess_text(H)
print '\n'.join(Cleand)
Il a bien fonctionné, mais le problème est quand je tente d'imprimer le texte.
La sortie du texte ايمان،سعد
:
?يم
?ن
?
?
?
mais si le texte est en anglais, même avec un signe de ponctuation arabe, il imprime le bon résultat.
La sortie du texte hi،eman
:
hi
eman
Quelle est la sortie prévue pour votre texte arabe? – NullUserException
C'est probablement le fait que l'arabe est imprimé à l'envers. En perl, je reçois la sortie de ايمان et, سعد – sln
Vous utilisez Python 2.x, n'est-ce pas? En Python 3.4, je reçois 'ايمان' et' سعد' quand j'entre 'ايمان, سعد' –