J'ai un editexttext et je veux compter les mots. Il y a quelque chose de mal quand il y a de nouvelles lignes dans l'editext.
J'ai essayé ceci: p> ceci est un texte -> wc: 4 p> Ceci est p> A P> texte -> WC: 4 p> Ceci est P> un simple p> texte -> WC: 4 p> Des idées? P> P>
3 Réponses :
Vous voulez scinder sur des cordes arbitraires de blancheurs, plutôt que des personnages d'espace. Ainsi, utilisez .split ("\\ s +") code> au lieu de .split ("") code>. P>.
Cela fonctionnerait même avec plusieurs espaces et des espaces de meneur et / ou de fuite et de lignes vierges: Vous pouvez également utiliser \\ w ici au lieu de \\ s, si vous pouviez avoir quelque chose d'autre que l'espace séparant des mots. P> p>
Je suggère d'utiliser Basiterator a>. Selon mon expérience, c'est la meilleure façon de ne pas couvrir les langages standard comme japonais où il n'y a pas d'espaces qui séparent les mots. P>
Exemple de mot comptant ici . P>
J'ai créé une fonction d'extension String String dans Kotlin qui utilise Brassiterator. Checkout mon GIST