J'utilise un code simple avec trois boucles pour obtenir des phrases de la liste de tableaux, les numériser, supprimer les mots vides et stocker le reste dans un tableau à deux dimensions.Analyse des mots vides à l'aide d'une liste de tableaux
PhraseList est la liste de tableaux. Stopwords est le tableau contenant la liste des mots vides.
Le programme vise à prendre chaque phrase supprimer les mots vides et enregistrer le reste dans un tableau. Voici le code:
String[][] trim=new String[sentenceList.size()][largest];
StringTokenizer st1;
for(int i=0;i<sentenceList.size();i++)
{
st1= new StringTokenizer(sentenceList.get(i)," ,(){}[]/.;:'&?!");
int count=st1.countTokens();
for(int j=0;j<count;j++)
{
String token=st1.nextToken();
for(int k=0;k<stopwords.length;k++)
{
if(token.equals(stopwords[k]))
continue;
else
trim[i][j]=token;
}
}
}
//PRINT CHECK
for(int i=0;i<sentenceList.size();i++)
{
for(int j=0;j<largest;j++)
{
if(trim[i][j]!=null)
System.out.print(trim[i][j]+" ");
}
System.out.println();
L'élément déroutant est que ces exigences ne fonctionne pas, mais si j'échange le cas et la partie sinon il fonctionne et je ne reçois que les mots vides.
On dirait que votre 'trim [i] [j] = token;' est au mauvais endroit. Vous voulez faire cela si le jeton est AUCUN des mots vides. Mais vous l'attribuez s'il y a un mot qui ne correspond pas au jeton. –
Utilisez-vous un tableau pour les mots d'arrêt? Un ensemble serait une meilleure idée. – RealSkeptic
@DavidWallace: Cela a été mon erreur. Je vais le changer. Je vous remercie. –