IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Java Discussion :

Problème de Regex ... avec un point


Sujet :

Langage Java

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2003
    Messages : 34
    Points : 32
    Points
    32
    Par défaut [Résolu]Problème de Regex ... avec un point
    Bonjour à tous.

    Je dois vérifier des entrées utilisateurs... qui doivent rentrer des valeur correspondant à un float. Je me dis donc que je vais faire une jolie regex pour bien vérifier la validité de leurs saisies.

    Le problème c'est qu'il y à un point entre les unités et les décimales sur un float... Et comme le point représente "n'importe quel caractère" en Regex, j'ai un petit souci.

    Comme je veux déspécialiser le "point" de ma regex, je voudrais mettre un backslash devant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    pattern = Pattern.compile("^[0-9]{1,6}\.[0-9]{2}");
    		matcher = pattern.matcher(s);
    Le seul problème, c'est qu'Eclipse m'empêche de compiler en me disant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Invalid escape sequence
    Oui c'est logique... Mais que faire? Je m'y prends peut-être mal? Quelqu'un peut-il m'aider? Si oui, je le remercie d'avance.

    Merci beaucoup !

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    429
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 429
    Points : 475
    Points
    475
    Par défaut
    \\. devrait marcher.

    Cf. Javadoc :
    http://java.sun.com/j2se/1.5.0/docs/...x/Pattern.html
    Backslashes, escapes, and quoting
    The backslash character ('\') serves to introduce escaped constructs, as defined in the table above, as well as to quote characters that otherwise would be interpreted as unescaped constructs. Thus the expression \\ matches a single backslash and \{ matches a left brace.

    It is an error to use a backslash prior to any alphabetic character that does not denote an escaped construct; these are reserved for future extensions to the regular-expression language. A backslash may be used prior to a non-alphabetic character regardless of whether that character is part of an unescaped construct.

    Backslashes within string literals in Java source code are interpreted as required by the Java Language Specification as either Unicode escapes or other character escapes. It is therefore necessary to double backslashes in string literals that represent regular expressions to protect them from interpretation by the Java bytecode compiler. The string literal "\b", for example, matches a single backspace character when interpreted as a regular expression, while "\\b" matches a word boundary. The string literal "\(hello\)" is illegal and leads to a compile-time error; in order to match the string (hello) the string literal "\\(hello\\)" must be used.
    Nicolas

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2003
    Messages : 34
    Points : 32
    Points
    32
    Par défaut
    Cela fonctionne ! Merci Nicolas_75 pour ton aide !

    Le problème est donc résolu, et je le fais savoir par le titre de ce sujet. Merci encore !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [RegEx] Problème de regex avec ?
    Par reminho69 dans le forum Langage
    Réponses: 1
    Dernier message: 16/01/2013, 10h09
  2. Problème de regex avec des parenthèses imbriquées
    Par sopsag dans le forum Général Python
    Réponses: 4
    Dernier message: 15/07/2010, 12h02
  3. Réponses: 6
    Dernier message: 10/03/2010, 09h52
  4. Problème Eclipse Java avec les points d'arrêt
    Par _MattU_ dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 04/01/2010, 17h12
  5. problème avec les point sprites
    Par conrad dans le forum DirectX
    Réponses: 2
    Dernier message: 14/07/2005, 18h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo