Regex java

Bonsoir,
j’aimerais comprendre pourquoi "-6,5".matches("^[+-]?[0-9]+(.[0-9]+)?$") est vrai ? Le point et la virgule ne sont pas le même caractère il me semble.

[edit] pardon, j’ai rien dit …

Une explication aurait mieux valu qu’une excuse :mrgreen:

Le point est un caractère spécial des regex qui correspond à “n’importe quel caractère” d’où le fait qu’il accepte la virgule aussi. Pour faire correspondre un point il faudrait utiliser . dans la regex.

Le point est un caractère spécial des regex qui correspond à “n’importe quel caractère” d’où le fait qu’il accepte la virgule aussi. Pour faire correspondre un point il faudrait utiliser . dans la regex.[/quote]
Et ça ne le serait pas (à moins de vouloir accepter -9.21.36…54).

Je comprends pas. Le + (celui dans les parenthèses) ne porte bien que sur [0-9] pas sur le point précédant, donc aucune raison que cette regex accepte -9.21.36…54 :017
J’ai loupé quoi ?

C’est moi qui suis bigleux… Mea maxima culpa.