2010-12-03 8 views
0

J'ai deux versions du même document (D, par exemple) contenant du texte multilingue (anglais et autres):Comment supprimer des mots d'un texte multilingue?

I. On est codé en ASCII avec Unicode codes points représentés comme des références d'entités de caractères (ie les caractères Unicode sont de la forme & #N, où N est l'équivalent décimal de la valeur hexadécimal Unicode)

II. L'autre est le codage UTF-8.

Q 1:

J'ai une liste séparée des mots (codés en UTF-8, et dans plus d'une langue), que je dois retirer du document D. Comment dois-je procéder?

Puis-je utiliser regex pour nettoyer D? Pour doc type I, je crois que je dois spécifier l'ensemble des motifs #N & pour chaque mot de la liste lorsque je forme l'expression régulière.

La tâche devrait-elle être plus facile pour doc type II, maintenant que je peux spécifier les caractères non-anglais directement dans la regex (mon emacs est configuré pour utiliser ces polices non-anglais)?

Q 2:

J'ai une énorme collection de ce document D'art. Quel devrait être le meilleur algorithme pour supprimer les mots de chacun de ces documents? Une recherche de table est simple mais probablement la plus lente. Dois-je regex à travers chacun?

+0

Il serait utile de fournir une liste de langues possibles. Comme décrit, vos exigences sont difficiles, voire impossibles à remplir pour chaque langue. –

+0

Le texte est en anglais et en bengali. – rup

Répondre

1

Je propose de traiter les entités d'abord pour que les deux sortes de fichiers ont le même aspect. Lorsque vous avez terminé, replacez le premier ensemble dans sa forme codée.

Questions connexes