Méthode substring

ultrarich2001 -  
KX Messages postés 19031 Statut Modérateur -
Bonjour,
j'aimerais enregistrer dans ma base ceci
"12AF" donnera dans la base "AF"
"2S" ......................................."S"
"21C"....................................."C"
j'utlise la methode substring mais cela ne marche pour tous
merci d'avance

3 réponses

  1. Zep3k!GnO Messages postés 2049 Statut Membre 200
     
    en gros, tu veux supprimer tous les chiffres en début de string jusqu'à ce que tu tombes sur une lettre c'est ça ?
    Si oui, fais une expression régulière et utilise preg_replace() : http://www.php.net/manual/fr/function.preg-replace.php
    0
    1. ultrarich2001 Messages postés 72 Statut Membre
       
      oui c'est bien cela juste enregistre le lettre dans ma base
      0
    2. ultrarich2001 Messages postés 72 Statut Membre
       
      je suis entrain de developper avec java
      0
    3. ultrarich2001 Messages postés 72 Statut Membre
       
      merci pour ta reponse
      0
    4. ultrarich2001 Messages postés 72 Statut Membre
       
      je suis encore loin du compte tu as d'autres suggestions
      0
    5. Zep3k!GnO Messages postés 2049 Statut Membre 200
       
      Je ne connais pas bien le Java, mais en 1 seconde sur google ("java regexp") : http://docs.oracle.com/javase/1.4.2/docs/api/java/util/regex/Pattern.html ...
      0
  2. Elsyfiryos Messages postés 90 Statut Membre 11
     
    Salut,

    je le mets pas dans une boucle mais voila le concept :)

    $str1 = "12AF";
    $str2 = "2S";
    $str3 = "21C";
    
    $str1 = preg_replace ("([0-9].*?)", "", $str1) ;
    $str2 = preg_replace ("([0-9].*?)", "", $str2) ;
    $str3 = preg_replace ("([0-9].*?)", "", $str3) ;


    Cela supprime tous les chiffres des chaines de caractères souhaitées.
    0
    1. ultrarich2001 Messages postés 72 Statut Membre
       
      je develope sous java et les string
      $str1 = "12AF";
      $str2 = "2S";
      $str3 = "21C";
      sont sur des boutons d'un calendrier ,k'en pense tu ?
      0
    2. ultrarich2001 Messages postés 72 Statut Membre
       
      merci pour ta reponse
      0
  3. KX Messages postés 19031 Statut Modérateur 3 020
     
    Pour reprendre l'idée des expressions régulières, voici un exemple qui supprime tous les chiffres de la chaîne de caractères :

    String str = "123ABC456";
    String res = str.replaceAll("[0-9]", "");
    System.out.println(res);

    Au niveau performance, si dans tous les cas les chiffres sont avant les lettres, il serait préférable de faire comme ceci (il y aura un seul remplacement au lieu d'un par chiffre) :

    String str = "123ABC";
    String res = str.replaceFirst("[0-9]*", "");
    System.out.println(res);
    0
    1. ultrarich2001 Messages postés 72 Statut Membre
       
      Brs KX ca fait un moment merci pour ta reponse .En clair si je l'applique sur n'importe kel bouton de mon calendrier ca va marche?
      si oui alors dis je veux verifier k'une valeur est deja dans ma base de donnee avant den inserer le meme ou un autre pour eviter des doublons par exemple
      que lundi ne prenne pas deux fois la valeur matin ,cela doit etre matin ou soir je suis presque a la fin de mon agenda .merci pour la reponse
      0
    2. KX Messages postés 19031 Statut Modérateur 3 020
       
      Je ne me souviens plus trop du format de ton calendrier (je vois un certain nombre de posts sur le forum), mais la première solution va retirer tous les chiffres de la chaîne, et la deuxième supprimer le premier nombre, ce qui pourrait revenir au même et correspondre à tous tes boutons selon leur format.

      Au niveau des doublons, je ne m'y connais pas trop en bases de données, mais je pense que tu peux directement faire une requête qui évite les doublons (et ce sera plus rapide que de le refaire en Java)
      0
    3. ultrarich2001 Messages postés 72 Statut Membre
       
      je prefere le premier ki retire tous les chiffres ;pour la bd une requete serait mieux en sql c'est bien cela du genre une comparaison ou equals ?
      0
    4. ultrarich2001 Messages postés 72 Statut Membre
       
      une derniere info comment pourrais je afficher ma page avec son calendrier comme une page web ? peut etre a partir d'un server local en un keski me fo comme astuce ou proceder pour reussir ?
      0
    5. KX Messages postés 19031 Statut Modérateur 3 020
       
      Au niveau des doublons SQL, regarde ici pour te faire une idée. Dans ton cas, la date pourrait servir d'identifiant unique...

      Pour afficher ton calendrier comme une page web, ça dépend du contexte, si tu es déjà dans un contexte web (servlets, JSP...) c'est direct, sinon tu génére un fichier HTML avec le contenu, et tu l'ouvres avec Desktop.Open
      0