Un equivalent à la fonction substring en asp

Un equivalent à la fonction substring en asp - ASP - Programmation

Marsh Posté le 15-04-2004 à 13:17:15    

'jour tlm,
voilà mon blème c'est que je veux afficher le contenu d'une string mettons de 150 caractères sur 3 lignes de 50 caractères chaque, utilisant une boucle for ou while si possible. Je n'ai trouvé aucune fonction du type substring en Asp qui le permette. La fonction qui s'en rapproche le plus est Mid(ObjRS("MaChaine" ), Debut, Taille) mais cette dernière plante pour une raison encore inconnue et ne fonctionne qu'avec deux arguments que sont Mid(ObjRS("MaChaine" ), Taille). Et encore, elle n'accepte pas qu'on lui spécifie les valeurs de Debut et Taille avec des variables mais seulement en donnant les chiffres, exemple Mid(ObjRS("MaChaine" ), 15).
Y a t'il quelqu'un pour me proposer une solution à ceci ?
Merci :jap:


---------------
B(u)y Any Code Necessary !
Reply

Marsh Posté le 15-04-2004 à 13:17:15   

Reply

Marsh Posté le 19-04-2004 à 21:55:53    

Mis a part le fait que je ne vois pas l'utilite tu peux te demerder avec right et left 'a l'ancienne', ca donne :
<%
  chaine = "1234567890AZERTYUIIOP¨¨MMLSMLJQSKGNB NBX .X?W§/X.CLKCNH"
  chaine_temp = chaine
  lg = len(chaine)
  pas = 5
  for i = pas to lg step pas
      response.write (left(chaine_temp,pas) & "<br>" )
      chaine_temp = Right(chaine, lg - i )
  next
       
%>
par exemple.

Reply

Marsh Posté le 20-04-2004 à 08:10:50    

Abracadabra a écrit :

'jour tlm,
voilà mon blème c'est que je veux afficher le contenu d'une string mettons de 150 caractères sur 3 lignes de 50 caractères chaque, utilisant une boucle for ou while si possible. Je n'ai trouvé aucune fonction du type substring en Asp qui le permette. La fonction qui s'en rapproche le plus est Mid(ObjRS("MaChaine" ), Debut, Taille) mais cette dernière plante pour une raison encore inconnue et ne fonctionne qu'avec deux arguments que sont Mid(ObjRS("MaChaine" ), Taille). Et encore, elle n'accepte pas qu'on lui spécifie les valeurs de Debut et Taille avec des variables mais seulement en donnant les chiffres, exemple Mid(ObjRS("MaChaine" ), 15).
Y a t'il quelqu'un pour me proposer une solution à ceci ?
Merci :jap:  


 
Tu as tout faux.
 
Mid accepte les variables. Mid accepte les valeurs de début et taille, la taille etant un paramètre optionnal. Vérifie ton code et tes valeurs avec des responses.write()  :whistle:


Message édité par Gfreeman le 20-04-2004 à 08:11:04
Reply

Marsh Posté le 20-04-2004 à 11:21:04    

Oui merci tout le monde. J'aurai dû revenir plus tôt pour prévenir que j'ai pu me demerder en déplaçant le problème vers la requête sql sous Oracle,le fonctionnement de Mid étant un peu trop capricieux à mon goût. donc je m'en sors avec une requête du type: SELECT substr(MaChaine,0,49) as Bloc1, substr(MaChaine,50,50) as Bloc2, substr(MaChaine,100,50) as Bloc3  FROM MaTable where MaConditon=TRUE et afficher le résultat grâce à une bouclette.
Voili Voilou. A bientôt

Reply

Marsh Posté le 28-04-2004 à 14:26:02    

pour ton mid , Cstr() est ton ami ...

Reply

Marsh Posté le 18-05-2004 à 03:22:33    

vrai qui vaut mieux toujours préférer couper les chaînes le plus tôt possible dans l'éxécution donc le faire directement au niveau sql te permet de déplacer moins de données entre deux process ..


Message édité par bill_clinton le 18-05-2004 à 03:22:54
Reply

Marsh Posté le 18-05-2004 à 08:37:44    

je suis de bonne composition, voici ce que dit MSDN:
 

Citation :

Mid Function
       
 
Returns a Variant (String) containing a specified number of characters from a string.
 
Syntax
 
Mid(string, start[, length])
 
The Mid function syntax has these named arguments:
 
Part Description  
string Required. String expression from which characters are returned. If string contains Null, Null is returned.  
start Required; Long. Character position in string at which the part to be taken begins. If start is greater than the number of characters in string, Mid returns a zero-length string ("" ).  
length Optional; Variant (Long). Number of characters to return. If omitted or if there are fewer than length characters in the text (including the character at start), all characters from the start position to the end of the string are returned.  
 
 
Remarks
 
To determine the number of characters in string, use the Len function.
 
Note   Use the MidB function with byte data contained in a string, as in double-byte character set languages. Instead of specifying the number of characters, the arguments specify numbers of bytes. For sample code that uses MidB, see the second example in the example topic.


 
la prochaine fois -> [:msdn] http://msdn.microsoft.com/


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed