148 votes

Comment diviser un texte en phrases ?

J'ai un fichier texte. J'ai besoin d'obtenir une liste de phrases.

Comment cela peut-il être mis en œuvre ? Il y a beaucoup de subtilités, comme l'utilisation d'un point dans les abréviations.

Mon ancienne expression régulière fonctionne mal :

re.compile('(\. |^|!|\?)([A-Z][^;\.<>@\^&/\[\]]*(\.|!|\?) )',re.M)

0 votes

Je veux faire cela, mais je veux séparer chaque fois qu'il y a un point ou un saut de ligne.

0voto

Mazeen Muhammed Points 11

Je travaillais sur une tâche similaire et je suis tombé sur cette requête, en suivant quelques liens et en travaillant sur quelques exercices pour nltk, le code ci-dessous a fonctionné pour moi comme par magie.

from nltk.tokenize import sent_tokenize 

text = "Hello everyone. Welcome to GeeksforGeeks. You are studying NLP article"
sent_tokenize(text) 

sortie :

['Hello everyone.',
 'Welcome to GeeksforGeeks.',
 'You are studying NLP article']

Source : https://www.geeksforgeeks.org/nlp-how-tokenizing-text-sentence-words-works/

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X