guillemets dans un texte

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
fred32
Messages : 22
Inscription : jeu. 18/août/2005 14:51

guillemets dans un texte

Message par fred32 »

bonjour

j'aimerai savoir comment on fait pour mettre des guillemets dans un texte car ils sont necessaire justement pour creer le texte ?

par exemple : stringgadget(#gadget1,"guillemets")

mettre des guillemets à la place guillemets
Avatar de l’utilisateur
Progi1984
Messages : 2659
Inscription : mar. 14/déc./2004 13:56
Localisation : France > Rennes
Contact :

Message par Progi1984 »

esssaie ca

Code : Tout sélectionner

string.s="Ipsem"+chr(34)+"texte"+chr(34)+"fin"
debug string.s
fred32
Messages : 22
Inscription : jeu. 18/août/2005 14:51

Message par fred32 »

merci, je crois que c'est bon
Avatar de l’utilisateur
venom
Messages : 3136
Inscription : jeu. 29/juil./2004 16:33
Localisation : Klyntar
Contact :

Message par venom »

bonjour, fred32 si tu veut j'ai fait un programme une fois sur les CHR, le voila si tu veut.

ici

c'est bidon mais bon :)


@++
Windows 10 x64, PureBasic 5.73 x86 & x64
GPU : radeon HD6370M, CPU : p6200 2.13Ghz
Avatar de l’utilisateur
venom
Messages : 3136
Inscription : jeu. 29/juil./2004 16:33
Localisation : Klyntar
Contact :

Message par venom »

desol je me suis tromper voici le vrai lien :lol:

ici


@++
Windows 10 x64, PureBasic 5.73 x86 & x64
GPU : radeon HD6370M, CPU : p6200 2.13Ghz
Avatar de l’utilisateur
Droopy
Messages : 1151
Inscription : lun. 19/juil./2004 22:31

Message par Droopy »

Moi j'utilise le ² qui est remplacé par le guillemet.
Cela évite la saisie de xxxxx+chr(34)+zzzzzzz+chr(34) que je trouve illisible quand il y en a plusieurs dans le même texte

Code : Tout sélectionner

Procedure.s RemplaceParGuillemet(Texte.s)
  ProcedureReturn ReplaceString(Texte,"²",Chr(34))
EndProcedure

MessageRequester("", RemplaceParGuillemet("cmd /c ²c:\windows\system32\notepad.exe² ²c:\test\FichierLog.txt²"))
Dorian
Messages : 489
Inscription : mar. 15/mars/2005 15:33

Message par Dorian »

Pas con sa jvai utiliser ta méthode ^^
lionel_om
Messages : 1500
Inscription : jeu. 25/mars/2004 11:23
Localisation : Sophia Antipolis (Nice)
Contact :

Message par lionel_om »

Droopy, tu peux optimiser ton code :wink:
ReplaceString() a un 3ème paramètre que tu devrais utiliser 8)
Webmestre de Basic-univers
Participez à son extension: ajouter vos programmes et partagez vos codes !
Avatar de l’utilisateur
Droopy
Messages : 1151
Inscription : lun. 19/juil./2004 22:31

Message par Droopy »

Cette option peut être utile hors de cette procédure.
Elle est inutile dans cette procédure.
lionel_om
Messages : 1500
Inscription : jeu. 25/mars/2004 11:23
Localisation : Sophia Antipolis (Nice)
Contact :

Message par lionel_om »

Droopy a écrit :Cette option peut être utile hors de cette procédure.
Elle est inutile dans cette procédure.
Je ne susi pas daccord. Car tu remplace un caractère par un autre. Donc c'est le cas typique pour l'utiliser. Sinon on l'utilise quand ?

Dans ce cas ca évite de refaire une duplication de la chaîne de caractères qui aura la même longueur, avec juste un changement de quelques caractères...
Webmestre de Basic-univers
Participez à son extension: ajouter vos programmes et partagez vos codes !
Avatar de l’utilisateur
Flype
Messages : 2431
Inscription : jeu. 29/janv./2004 0:26
Localisation : Nantes

Message par Flype »

c'est pas très important mais lionel_om a raison je pense. Le remplacement d' 1 caractère par 1 autre est plus rapide avec Mode = 2.
Image
Avatar de l’utilisateur
Droopy
Messages : 1151
Inscription : lun. 19/juil./2004 22:31

Message par Droopy »

Effectivement on gagne entre 2 et 3µs dans ce mode.
Je connaissais ce mode mais je pensais que la version la plus courte était plus rapide.

Code : Tout sélectionner

Global MeasureHiResIntervalTime.l

Procedure HiResCounterStart()
  QueryPerformanceFrequency_(@retour)
  If retour <>0 : retour = 1 : EndIf
  QueryPerformanceCounter_(@MeasureHiResIntervalTime)  
  ProcedureReturn retour
EndProcedure

Procedure.f HiResCounterStop()
  QueryPerformanceCounter_(@Temp)
  Difference=Temp-MeasureHiResIntervalTime
  QueryPerformanceFrequency_(@HiResTimerFrequency)
  Periode.f=1/HiResTimerFrequency
  DureeTotale.f=Difference*Periode
  ProcedureReturn DureeTotale
EndProcedure

Procedure.s RemplaceParGuillemet(Texte.s) 
  ProcedureReturn ReplaceString(Texte,"²",Chr(34))
EndProcedure 

Procedure.s RemplaceParGuillemet2(Texte.s) 
   ReplaceString(Texte,"²",Chr(34),2)
  ProcedureReturn Texte
EndProcedure 

HiResCounterStart()
RemplaceParGuillemet("cmd /c ²c:\windows\system32\notepad.exe² ²c:\test\FichierLog.txt²")
Debug HiResCounterStop()

HiResCounterStart()
RemplaceParGuillemet2("cmd /c ²c:\windows\system32\notepad.exe² ²c:\test\FichierLog.txt²")
Debug HiResCounterStop()
Avatar de l’utilisateur
Flype
Messages : 2431
Inscription : jeu. 29/janv./2004 0:26
Localisation : Nantes

Message par Flype »

le plus rapide c'est encore de faire une macro mais bon sur cette fonction c'est pas flagrant.
Image
Répondre