Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Rémy
"Cyrille Proust" a écrit dans le message de news:cp20k1$r33$
Bonjour,
Est-ce un comportement normal ?
String str = "1.8.2"; String[] numbers = str.split ("."); for (int i=0; i < numbers.length; i++) System.out.println (numbers[i]);
Resultat : 1.8.2 alors que normalement j'attendais 1 n 2 n 8...
Merci,
Cyrille Proust
Bonjour,
String.split utilise une regular expression en paramètre.
En tant que regular expression, "." correspond à n'importe quel caractère. Donc pour split, il n'y a que des séparateurs dans le texte. J'aurais pensé que split rendrait plutôt un tableau de 0 elements...
En tout cas, pour découper avec un séparateur '.', il faut utiliser "." comme paramètre de split.
Rémy
"Cyrille Proust" <cyrille.proust@TO_BE_REMOVE_d2t.fr> a écrit dans le
message de news:cp20k1$r33$1@s5.feed.news.oleane.net...
Bonjour,
Est-ce un comportement normal ?
String str = "1.8.2";
String[] numbers = str.split (".");
for (int i=0; i < numbers.length; i++)
System.out.println (numbers[i]);
Resultat : 1.8.2 alors que normalement j'attendais 1 n 2 n 8...
Merci,
Cyrille Proust
Bonjour,
String.split utilise une regular expression en paramètre.
En tant que regular expression, "." correspond à n'importe quel caractère.
Donc pour split, il n'y a que des séparateurs dans le texte. J'aurais pensé
que split rendrait plutôt un tableau de 0 elements...
En tout cas, pour découper avec un séparateur '.', il faut utiliser "."
comme paramètre de split.
"Cyrille Proust" a écrit dans le message de news:cp20k1$r33$
Bonjour,
Est-ce un comportement normal ?
String str = "1.8.2"; String[] numbers = str.split ("."); for (int i=0; i < numbers.length; i++) System.out.println (numbers[i]);
Resultat : 1.8.2 alors que normalement j'attendais 1 n 2 n 8...
Merci,
Cyrille Proust
Bonjour,
String.split utilise une regular expression en paramètre.
En tant que regular expression, "." correspond à n'importe quel caractère. Donc pour split, il n'y a que des séparateurs dans le texte. J'aurais pensé que split rendrait plutôt un tableau de 0 elements...
En tout cas, pour découper avec un séparateur '.', il faut utiliser "." comme paramètre de split.
Rémy
Zazoun
Bonjour, ce n'est pas un comportement normal : ce que tu devrais obtenir, c'est que le tableau numbers devrait être de taille nulle. En effet, String.split(String regex) prend en argument une expression régulière, dans laquelle "." veut dire : n'importe quel caractère. Et dans "1.8.2", quand on enlève tout ce qui matche n'importe quel caractère, il ne reste pas grand chose.
Si tu veux utiliser le caractère '.' comme séparateur, il faut utiliser l'expression régulière "." dans ton code. Pour en savoir un peu plus sur les expressions régulières, je te conseille de lire au moins ceci : http://java.sun.com/j2se/1.4.2/docs/api/java/util/regex/Pattern.html Zazoun
Bonjour,
ce n'est pas un comportement normal : ce que tu devrais obtenir, c'est
que le tableau numbers devrait être de taille nulle.
En effet, String.split(String regex) prend en argument une expression
régulière, dans laquelle "." veut dire : n'importe quel caractère.
Et dans "1.8.2", quand on enlève tout ce qui matche n'importe quel
caractère, il ne reste pas grand chose.
Si tu veux utiliser le caractère '.' comme séparateur, il faut
utiliser l'expression régulière "\." dans ton code.
Pour en savoir un peu plus sur les expressions régulières, je te
conseille de lire au moins ceci :
http://java.sun.com/j2se/1.4.2/docs/api/java/util/regex/Pattern.html
Zazoun
Bonjour, ce n'est pas un comportement normal : ce que tu devrais obtenir, c'est que le tableau numbers devrait être de taille nulle. En effet, String.split(String regex) prend en argument une expression régulière, dans laquelle "." veut dire : n'importe quel caractère. Et dans "1.8.2", quand on enlève tout ce qui matche n'importe quel caractère, il ne reste pas grand chose.
Si tu veux utiliser le caractère '.' comme séparateur, il faut utiliser l'expression régulière "." dans ton code. Pour en savoir un peu plus sur les expressions régulières, je te conseille de lire au moins ceci : http://java.sun.com/j2se/1.4.2/docs/api/java/util/regex/Pattern.html Zazoun
|||Cypher|||
Salut.
Essayes plutôt un StringTokenizer. C fait pour.
@+
-- http://e-cologis.com le site des colocataires
"Cyrille Proust" wrote in message news:cp20k1$r33$
Bonjour,
Est-ce un comportement normal ?
String str = "1.8.2"; String[] numbers = str.split ("."); for (int i=0; i < numbers.length; i++) System.out.println (numbers[i]);
Resultat : 1.8.2 alors que normalement j'attendais 1 n 2 n 8...
Merci,
Cyrille Proust
Salut.
Essayes plutôt un StringTokenizer. C fait pour.
@+
--
http://e-cologis.com
le site des colocataires
"Cyrille Proust" <cyrille.proust@TO_BE_REMOVE_d2t.fr> wrote in message
news:cp20k1$r33$1@s5.feed.news.oleane.net...
Bonjour,
Est-ce un comportement normal ?
String str = "1.8.2";
String[] numbers = str.split (".");
for (int i=0; i < numbers.length; i++)
System.out.println (numbers[i]);
Resultat : 1.8.2 alors que normalement j'attendais 1 n 2 n 8...
"Cyrille Proust" wrote in message news:cp20k1$r33$
Bonjour,
Est-ce un comportement normal ?
String str = "1.8.2"; String[] numbers = str.split ("."); for (int i=0; i < numbers.length; i++) System.out.println (numbers[i]);
Resultat : 1.8.2 alors que normalement j'attendais 1 n 2 n 8...
Merci,
Cyrille Proust
mettre la valeur Unicode du point "." . Car en regexp . remplace
n'importe quel caractère voir classe package java.util.regex Class Pattern
Patrick Gras
Bonjour,
En fait la Javadoc conseille de ne plus utiliser StringTokenizer, mais String.split...
J'ai aussi testé ton code en Java 1.4 et 1.5 et j'obtient un tableau vide les deux fois (et pas 1.8.2)
Comme qqn l'a déjà dit : String[] numbers = str.split (".");
-Patrick
" StringTokenizer is a legacy class that is retained for compatibility reasons although its use is discouraged in new code. It is recommended that anyone seeking this functionality use the split method of String or the java.util.regex package instead."
"|||Cypher|||" wrote in message news:41b60bc4$0$31293$
Salut.
Essayes plutôt un StringTokenizer. C fait pour.
@+
-- http://e-cologis.com le site des colocataires
"Cyrille Proust" wrote in message news:cp20k1$r33$
Bonjour,
Est-ce un comportement normal ?
String str = "1.8.2"; String[] numbers = str.split ("."); for (int i=0; i < numbers.length; i++) System.out.println (numbers[i]);
Resultat : 1.8.2 alors que normalement j'attendais 1 n 2 n 8...
Merci,
Cyrille Proust
Bonjour,
En fait la Javadoc conseille de ne plus utiliser StringTokenizer, mais
String.split...
J'ai aussi testé ton code en Java 1.4 et 1.5 et j'obtient un tableau vide
les deux fois (et pas 1.8.2)
Comme qqn l'a déjà dit : String[] numbers = str.split ("\.");
-Patrick
" StringTokenizer is a legacy class that is retained for compatibility
reasons although its use is discouraged in new code. It is recommended that
anyone seeking this functionality use the split method of String or the
java.util.regex package instead."
"|||Cypher|||" <ocotassonSTOPSPAM@noos.fr> wrote in message
news:41b60bc4$0$31293$636a15ce@news.free.fr...
Salut.
Essayes plutôt un StringTokenizer. C fait pour.
@+
--
http://e-cologis.com
le site des colocataires
"Cyrille Proust" <cyrille.proust@TO_BE_REMOVE_d2t.fr> wrote in message
news:cp20k1$r33$1@s5.feed.news.oleane.net...
Bonjour,
Est-ce un comportement normal ?
String str = "1.8.2";
String[] numbers = str.split (".");
for (int i=0; i < numbers.length; i++)
System.out.println (numbers[i]);
Resultat : 1.8.2 alors que normalement j'attendais 1 n 2 n 8...
En fait la Javadoc conseille de ne plus utiliser StringTokenizer, mais String.split...
J'ai aussi testé ton code en Java 1.4 et 1.5 et j'obtient un tableau vide les deux fois (et pas 1.8.2)
Comme qqn l'a déjà dit : String[] numbers = str.split (".");
-Patrick
" StringTokenizer is a legacy class that is retained for compatibility reasons although its use is discouraged in new code. It is recommended that anyone seeking this functionality use the split method of String or the java.util.regex package instead."
"|||Cypher|||" wrote in message news:41b60bc4$0$31293$
Salut.
Essayes plutôt un StringTokenizer. C fait pour.
@+
-- http://e-cologis.com le site des colocataires
"Cyrille Proust" wrote in message news:cp20k1$r33$
Bonjour,
Est-ce un comportement normal ?
String str = "1.8.2"; String[] numbers = str.split ("."); for (int i=0; i < numbers.length; i++) System.out.println (numbers[i]);
Resultat : 1.8.2 alors que normalement j'attendais 1 n 2 n 8...
Merci,
Cyrille Proust
Charron Didier
Salut.
Essayes plutôt un StringTokenizer. C fait pour.
@+
-- http://e-cologis.com le site des colocataires
"Cyrille Proust" wrote in message news:cp20k1$r33$
Bonjour,
Est-ce un comportement normal ?
String str = "1.8.2"; String[] numbers = str.split ("."); for (int i=0; i < numbers.length; i++) System.out.println (numbers[i]);
Resultat : 1.8.2 alors que normalement j'attendais 1 n 2 n 8...
Merci,
Cyrille Proust
mettre la valeur Unicode du point "." . Car en regexp . remplace
n'importe quel caractère voir classe package java.util.regex Class Pattern String[] numbers = str.split (".");
cela devrait marcher DC
Salut.
Essayes plutôt un StringTokenizer. C fait pour.
@+
--
http://e-cologis.com
le site des colocataires
"Cyrille Proust" <cyrille.proust@TO_BE_REMOVE_d2t.fr> wrote in message
news:cp20k1$r33$1@s5.feed.news.oleane.net...
Bonjour,
Est-ce un comportement normal ?
String str = "1.8.2";
String[] numbers = str.split (".");
for (int i=0; i < numbers.length; i++)
System.out.println (numbers[i]);
Resultat : 1.8.2 alors que normalement j'attendais 1 n 2 n 8...
Merci,
Cyrille Proust
mettre la valeur Unicode du point "." . Car en regexp . remplace
n'importe quel caractère voir classe
package java.util.regex Class Pattern
String[] numbers = str.split (".");