Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2507 connectés 

 


 Mot :   Pseudo :  
 
 Page :   1  2
Page Suivante
Auteur Sujet :

fonction d'analyse d'un champs de base de donnée

n°669787
kotw
Posté le 10-03-2004 à 15:34:48  profilanswer
 

Reprise du message précédent :
Salut, pour l'utilisation de StringTokenizer, tu peux essayer ça pour voir :
 
String src = new String();
String strTemp = c_sql.toLowerCase();
StringTokenizer token = new StringTokenizer (strTemp, " ,pe" );
while (token.hasMoreTokens())
{
  src = token.nextToken();
}
 
les trucs du genre "pe123" ou "pe 123" donneront "123" dans src


Message édité par kotw le 10-03-2004 à 15:37:10
mood
Publicité
Posté le 10-03-2004 à 15:34:48  profilanswer
 

n°669894
bentaih
la vie ne apprend encore
Posté le 10-03-2004 à 16:45:07  profilanswer
 

kotw a écrit :

Salut, pour l'utilisation de StringTokenizer, tu peux essayer ça pour voir :
 
String src = new String();
String strTemp = c_sql.toLowerCase();
StringTokenizer token = new StringTokenizer (strTemp, " ,pe" );
while (token.hasMoreTokens())
{
  src = token.nextToken();
}
 
les trucs du genre "pe123" ou "pe 123" donneront "123" dans src


 
le resultat "123" n'est pas ce que je cherche  c'est tte la chaine "pe 123" et "pe123"

n°669924
kotw
Posté le 10-03-2004 à 17:16:18  profilanswer
 

Lol désolé, j'avais carrément compris l'inverse :-)

n°669929
noldor
Rockn'roll
Posté le 10-03-2004 à 17:24:12  profilanswer
 

kotw a écrit :

Lol désolé, j'avais carrément compris l'inverse :-)

ben moi aussi


---------------
http://runnerstats.net
n°669936
bentaih
la vie ne apprend encore
Posté le 10-03-2004 à 17:35:43  profilanswer
 

noldor a écrit :

ben moi aussi
 


ben oui c pas grave

n°669957
kotw
Posté le 10-03-2004 à 17:58:44  profilanswer
 

Essaies ça alors :
 
String src = new String();  
String strTemp = c_sql.toLowerCase();  
StringTokenizer token = new StringTokenizer (strTemp, " " );
 
while (token.hasMoreTokens())  
{  
  src = token.nextToken();
 
  if (src.equalsIgnoreCase("pe" ))
    System.out.println (src + " " + token.nextToken());
 
  if (src.substring(0, 2).equalsIgnoreCase("pe" ))
  {
    if (src.length() > 2)
      if (Character.isDigit(src.charAt(2)))
         System.out.println(src);
  }
}
 
J'ai fait les tests avec des System.out et j'obtiens bien ce que tu recherches.

n°670592
bentaih
la vie ne apprend encore
Posté le 11-03-2004 à 10:59:14  profilanswer
 

kotw a écrit :

Essaies ça alors :
 
String src = new String();  
String strTemp = c_sql.toLowerCase();  
StringTokenizer token = new StringTokenizer (strTemp, " " );
 
while (token.hasMoreTokens())  
{  
  src = token.nextToken();
 
  if (src.equalsIgnoreCase("pe" ))
    System.out.println (src + " " + token.nextToken());
 
  if (src.substring(0, 2).equalsIgnoreCase("pe" ))
  {
    if (src.length() > 2)
      if (Character.isDigit(src.charAt(2)))
         System.out.println(src);
  }
}
 
J'ai fait les tests avec des System.out et j'obtiens bien ce que tu recherches.


 
je dois utiliser quelle methode avec ??
StringTokenizer(String str) ???
merci
 :jap:

n°670617
bentaih
la vie ne apprend encore
Posté le 11-03-2004 à 11:39:06  profilanswer
 

kotw a écrit :

Essaies ça alors :
 
String src = new String();  
String strTemp = c_sql.toLowerCase();  
StringTokenizer token = new StringTokenizer (strTemp, " " );
 
while (token.hasMoreTokens())  
{  
  src = token.nextToken();
 
  if (src.equalsIgnoreCase("pe" ))
    System.out.println (src + " " + token.nextToken());
 
  if (src.substring(0, 2).equalsIgnoreCase("pe" ))
  {
    if (src.length() > 2)
      if (Character.isDigit(src.charAt(2)))
         System.out.println(src);
  }
}
 
J'ai fait les tests avec des System.out et j'obtiens bien ce que tu recherches.


excuse pour une autre bete question ou tu fais appel a tes resulat de mysql
es ce que c'est en appellant c_sql

n°672171
kotw
Posté le 12-03-2004 à 17:41:11  profilanswer
 

StringTokenizer (String strArg, String delim) :
cette méthode "casse" la chaine "strArg" en plusieurs sous-chaines (token) en fonction de la chaine "delim".
 
Dans notre cas, il s'agit d'un espace (+ \t\n\r par défaut).
D'après ton exemple, tu as récupéré le résultat de ta requete dans "c_sql", j'utilise la mm écriture que toi, c'est tout.
 
Sit tu veux savoir si ce qui est écrit correspond à ce que tu recherches :
1. créé un fichier "test.txt" (par ex) dans lequel tu écris :
ligne 1 : "blabla peint pe123 bloblo"
ligne 2 : "blabla pe 123 bloblo"
ligne 3 : "blabla pe123 bloblo"
 
et tu verras que tu trouveras bien "pe 123" ou "pe123"
 
Edit : pour lire dans ce fichier "test.txt", j'ai fait ça :
 
public class Test
{
 private static String src;
 
 public static void readData (BufferedReader in) throws IOException
 {
  while ((src = in.readLine()) != null)
  {
   StringTokenizer token = new StringTokenizer(src, " " );
   while (token.hasMoreTokens())
   {
    src = token.nextToken();
     
    if (src.equalsIgnoreCase("pe" ))
    {
     System.out.println (src + " " + token.nextToken());
    }
 
    if (src.substring(0, 2).equalsIgnoreCase("pe" ))
    {
     if (src.length() > 2)
     {      
      if (Character.isDigit(src.charAt(2)))
       System.out.println(src);
     }      
    }
   }
  }
 }
 
 public static void main(String[] args)
 {
  try
  {
   BufferedReader buf = new BufferedReader (new FileReader ("test.txt" ));
   readData (buf);
  }
     
  catch (FileNotFoundException e)
  {
   // TODO Bloc catch auto-généré
   e.printStackTrace();
  }
  catch (IOException e)
  {
   e.printStackTrace();
  }
 }
}


Message édité par kotw le 12-03-2004 à 17:47:14
n°672378
veryfree
Posté le 12-03-2004 à 21:27:45  profilanswer
 

bentaih a écrit :


Citation :

la vie ne apprend encore




 
tu nous explique  [:veryfree]

mood
Publicité
Posté le 12-03-2004 à 21:27:45  profilanswer
 

n°672379
veryfree
Posté le 12-03-2004 à 21:29:44  profilanswer
 

noldor a écrit :

t'as regardé du coté de StreamTokenizer ?  
ça devrait te permettre facilement de récupérer ton numéro


 
c'est StringTokenizer  [:tt tt dago tt]

n°672414
noldor
Rockn'roll
Posté le 12-03-2004 à 22:07:14  profilanswer
 

veryfree a écrit :


 
c'est StringTokenizer  [:tt tt dago tt]  

StreamTokenizer, c'est un StringTokenizer plus mieux

n°672419
veryfree
Posté le 12-03-2004 à 22:12:38  profilanswer
 

noldor a écrit :

StreamTokenizer, c'est un StringTokenizer plus mieux


 
ok, ca m apprendra a pas me renseigner avant de dire des betises  :sol:

n°672722
noldor
Rockn'roll
Posté le 13-03-2004 à 13:12:36  profilanswer
 

veryfree a écrit :


 
ok, ca m apprendra a pas me renseigner avant de dire des betises  :sol:  

:hello:

n°673950
bentaih
la vie ne apprend encore
Posté le 15-03-2004 à 12:32:18  profilanswer
 

kotw a écrit :

StringTokenizer (String strArg, String delim) :
cette méthode "casse" la chaine "strArg" en plusieurs sous-chaines (token) en fonction de la chaine "delim".
 
Dans notre cas, il s'agit d'un espace (+ \t\n\r par défaut).
D'après ton exemple, tu as récupéré le résultat de ta requete dans "c_sql", j'utilise la mm écriture que toi, c'est tout.
 
Sit tu veux savoir si ce qui est écrit correspond à ce que tu recherches :
1. créé un fichier "test.txt" (par ex) dans l
equel tu écris :
ligne 1 : "blabla peint pe123 bloblo"
ligne 2 : "blabla pe 123 bloblo"
ligne 3 : "blabla pe123 bloblo"
 
et tu verras que tu trouveras bien "pe 123" ou "pe123"
 
Edit : pour lire dans ce fichier "test.txt", j'ai fait ça :
 
public class Test
{
 private static String src;
 
 public static void readData (BufferedReader in) throws IOException
 {
  while ((src = in.readLine()) != null)
  {
   StringTokenizer token = new StringTokenizer(src, " " );
   while (token.hasMoreTokens())
   {
    src = token.nextToken();
     
    if (src.equalsIgnoreCase("pe" ))
    {
     System.out.println (src + " " + token.nextToken());
    }
 
    if (src.substring(0, 2).equalsIgnoreCase("pe" ))
    {
     if (src.length() > 2)
     {      
      if (Character.isDigit(src.charAt(2)))
       System.out.println(src);
     }      
    }
   }
  }
 }
 
 public static void main(String[] args)
 {
  try
  {
   BufferedReader buf = new BufferedReader (new FileReader ("test.txt" ));
   readData (buf);
  }
     
  catch (FileNotFoundException e)
  {
   // TODO Bloc catch auto-généré
   e.printStackTrace();
  }
  catch (IOException e)
  {
   e.printStackTrace();
  }
 }
}


 
 
 
merci mais j'ai une petite erreur que j'arrive pas a corriger c'est  
 
Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 2
        at java.lang.String.substring(String.java:1517)
        at essaito.readData(essaito.java:27)
        at essaito.main(essaito.java:44)
 
 
sais tu a cause de quoi me donne t il cette erreur :jap:  :o

n°673951
bentaih
la vie ne apprend encore
Posté le 15-03-2004 à 12:33:09  profilanswer
 

veryfree a écrit :


 
tu nous explique  [:veryfree]  


 
secret  :non:  

n°673982
kotw
Posté le 15-03-2004 à 12:57:26  profilanswer
 

Tu as cette erreur en faisant la manip que j'ai effectué ? (avec le fichier "test.txt" etc ...) ou tu as adapté ce source avec une manip à toi ?


Message édité par kotw le 15-03-2004 à 12:57:48
n°674018
bentaih
la vie ne apprend encore
Posté le 15-03-2004 à 13:41:51  profilanswer
 

kotw a écrit :

Tu as cette erreur en faisant la manip que j'ai effectué ? (avec le fichier "test.txt" etc ...) ou tu as adapté ce source avec une manip à toi ?


 
non avec la meme manip que toi juste pour essayer

n°674055
kotw
Posté le 15-03-2004 à 14:17:32  profilanswer
 

Dans ce cas, essaies plutot ça :
if (src.length() > 2 && src.substring(0, 2).equalsIgnoreCase("pe" ))
{
  ...
}
 
à la place de :
    if (src.substring(0, 2).equalsIgnoreCase("pe" ))  
    {  
     if (src.length() > 2)  
        ...
 
ça ira peut-etre mieux :-)

n°674083
bentaih
la vie ne apprend encore
Posté le 15-03-2004 à 14:34:22  profilanswer
 

kotw a écrit :

Dans ce cas, essaies plutot ça :
if (src.length() > 2 && src.substring(0, 2).equalsIgnoreCase("pe" ))
{
  ...
}
 
à la place de :
    if (src.substring(0, 2).equalsIgnoreCase("pe" ))  
    {  
     if (src.length() > 2)  
        ...
 
ça ira peut-etre mieux :-)


 
 
super ca marche faudra que je l'essaiye sur ma manip  
et je te dis le resultat
en tt cas merci  :jap:

n°674085
kotw
Posté le 15-03-2004 à 14:35:47  profilanswer
 

Cool :-)

mood
Publicité
Posté le   profilanswer
 

 Page :   1  2
Page Suivante

Aller à :
Ajouter une réponse
 

Sujets relatifs
Fonction pour augmenter la netteté d'une image sous PHPConnexion à une base SQL server
rotation dans l'espace (fonction java)[Shell] Merger 2 lignes d'un fichier sur la base d'un ID commun
base Access et Java grrrrrrrrrrrr[VB] Recupere l'annee d'une date depuis une base ACCESS
Appel de fonction php dans lien html[Résolu] Existe-t-il une fonction si sous access?
VB-ACCESS fonction rechercher dans un champProblème avec un site php + base de donnée my sql :(
Plus de sujets relatifs à : fonction d'analyse d'un champs de base de donnée


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)