Bonjour,
Je suis en train de réfléchir à la manière de transformer une String mal tapée (avec des espaces mal placés, ou manquants) pour obtenir au final une String bien tapée.
Si, par exemple, je tape: "Ce matin ,il faisait beau, mais cet après-midi, il risque de pleuvoir ."
Je désire donc rajouter l'espace après la première virgule, supprimer l'espace avant la première virgule, supprimer un espace avant "après-midi" et supprimer l'espace avant le point final.
Alors plusieurs idées me viennent, mais je ne vois pas encore vraiment comment faire.
Taper une String comportant des erreurs.
La transformer en char.
Créer une ArrayList dans laquelle je stocke les char.
Avec un Iterator, regarder:
Si je trouve deux espaces d'affilés, en supprimer un.
Si je trouve un espace avant une virgule, un point, un point virgule etc., le supprimer.
Si je ne trouve pas d'espace après une virgule, un point, un point virgule etc., en rajouter un.
Du coup, j'obtiens normalement une ArrayList de char avec les espaces bien placés.
Et là, je recrée une String dans laquelle je recopie les char un par un.
Est-ce que vous auriez une idée moins tordue? J'ai l'impression qu'il y a bien plus simple que ce que je désire faire, peut-être avec charAt.
Merci d'avance,
Johnny3
Partager