java comment scinde une chaîne à partir de la fin
J'ai une chaîne comme "test.test.test"...".test" et j'ai besoin d'accéder dernier "test" word dans cette chaîne. Notez que le nombre de "test" dans la chaîne est illimité. si java a une méthode comme php explode
fonction, tout allait bien, mais... . Je pense que le fractionnement de la fin de la chaîne, peut résoudre mon problème.
Est-il possible de spécifier la direction de split
méthode?
Je connais une solution à ce problème peut être comme ceci:
String parts[] = fileName.split(".");
//for all parts, while a parts contain "." character, split a part...
mais je pense que cette mauvaise solution.
- Remarque: Utilisez
\\.
, comme.
a une signification spéciale dans la regex (cesplit
attend). - Si vous avez besoin seulement le dernier point, trouver avec
lastIndexOf
et ensuite utilisersubstring
au lieu de la division de la chaîne.
Vous devez vous connecter pour publier un commentaire.
Essayer sous-chaîne de caractères avec la méthode lastIndexOf de la Chaîne:
fails for input without "." do remember to test if lastIndexOf(".") != -1
System.out.println("no-dots-whatsoever".substring("no-dots-whatsoever".lastIndexOf(".") + 1)); -->no-dots-whatsoever
Je pense que vous pouvez utiliser
lastIndexOf(String str)
méthode à cette fin.