FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  
Derniers sujets
» Biomorphe de Pickover
par papydall Aujourd'hui à 0:49

» PanExpress : l'éditeur Panoramic avec création d'objet
par Minibug Dim 23 Sep 2018 - 22:14

» Planétarium virtuel.
par Pedro Alvarez Dim 23 Sep 2018 - 19:50

» Virus/Antivirus
par JL35 Dim 23 Sep 2018 - 10:55

» Calculatrice
par papydall Ven 21 Sep 2018 - 22:45

» Orbites de l’ensemble de Mandelbrot
par Minibug Ven 21 Sep 2018 - 21:32

» Demande pour Jack concernant PanExpress
par Minibug Ven 21 Sep 2018 - 11:04

» EPP_V01 éditeur pour Panoramic
par Minibug Mer 19 Sep 2018 - 21:03

» [RESOLU] Quelle ligne est sélectionnée dans SYNEDIT ?
par Jean Claude Mer 19 Sep 2018 - 21:02

» Petit coucou en passant !
par Minibug Dim 16 Sep 2018 - 15:03

» bug SEVERE fnc+sub : variables globales corrompus
par silverman Dim 16 Sep 2018 - 13:38

» Verrouiller un form en avant plan
par silverman Dim 16 Sep 2018 - 12:50

» Fin de l'aventure.
par Pedro Alvarez Sam 15 Sep 2018 - 18:16

» Demande d'explications Sur File_Write & File_writeln
par Jack Sam 15 Sep 2018 - 17:26

» MEMO avec des possibilités de commande
par Oscaribout Mer 12 Sep 2018 - 1:06

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Septembre 2018
LunMarMerJeuVenSamDim
     12
3456789
10111213141516
17181920212223
24252627282930
CalendrierCalendrier

Partagez | 
 

 Problème avec RemoveStringBetweenDelimiters.

Aller en bas 
AuteurMessage
Pedro Alvarez

avatar

Nombre de messages : 1180
Date d'inscription : 19/01/2014

MessageSujet: Problème avec RemoveStringBetweenDelimiters.   Ven 29 Déc 2017 - 19:56

Bonsoir.

@Klaus.

Comme tu peux le constater dans l'exemple ci-dessous, cette fonction ne supprime que la 1ère occurrence entre les crochets.
Merci de la suite.

Code:
dim te$, chaine99$, zz%, crochet_gauche$, crochet_droit$

dll_on "kgf"

crochet_gauche$="["
crochet_droit$="]"

chaine99$="Test [aa] [bb] test."

te$=string$(len(chaine99$)," ")
zz%=dll_call4("RemoveStringBetweenDelimiters",adr(chaine99$),adr(crochet_gauche$),adr(crochet_droit$),adr(te$))
chaine99$=trim$(te$)

message "'"+chaine99$+"'"
terminate
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

Nombre de messages : 11088
Age : 69
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Problème avec RemoveStringBetweenDelimiters.   Ven 29 Déc 2017 - 20:58

C'est normal. Voici ce que dit la doc:
Citation :
Cette fonction supprime une chaîne de caractères délimitée par deux délimiteurs qui sont des chaînes de caractères elles-même. Pour que la suppression soit possible, il faut que les deux délimiteurs soient présents dans la chaîne à modifier, et que le délimiteur de droite soit plus à droite que le délimiteur de gauche. Sinon, rien n'est fait.
et
Citation :

res%
0 si rien n'est remplacé
n>0 = position de la suppression
donc, tu fais ceci:
Code:
zz%=dll_call4("RemoveStringBetweenDelimiters",adr(chaine99$),adr(crochet_gauche$),adr(crochet_droit$),adr(te$))
chaine99$=trim$(te$)
while zz%>0
  zz%=dll_call4("RemoveStringBetweenDelimiters",adr(chaine99$),adr(crochet_gauche$),adr(crochet_droit$),adr(te$))
chaine99$=trim$(te$)
end_while
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Pedro Alvarez

avatar

Nombre de messages : 1180
Date d'inscription : 19/01/2014

MessageSujet: Problème avec RemoveStringBetweenDelimiters.   Sam 30 Déc 2017 - 7:40

Bonjour.

@Klaus.

Merci de la réponse rapide.

J'ai donc suivi tes conseils, et j'ai ajouté une boucle de test.

Mais j'avais pensé que tu aurais pû inclure cette boucle dans la fonction elle-même.

C'est comme tu le désires.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

Nombre de messages : 11088
Age : 69
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Problème avec RemoveStringBetweenDelimiters.   Sam 30 Déc 2017 - 9:03

J'ai préféré ajouter une nouvelle fonction plutôt que de changer le fonctionnement d'une fonction existante.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Pedro Alvarez

avatar

Nombre de messages : 1180
Date d'inscription : 19/01/2014

MessageSujet: Problème avec RemoveStringBetweenDelimiters.   Sam 30 Déc 2017 - 16:02

Bonjour.

@Klaus.

Je rencontre un problème avec cette nouvelle fonction.
En fait, le message ne s'affiche jamais.
J'ai l'impression que la fonction provoque un blocage.
Merci de ton aide.

Code:
dim te$, chaine99$, zz%, crochet_gauche$, crochet_droit$

dll_on "kgf"

crochet_gauche$="["
crochet_droit$="]"

chaine99$="Test [aa] [bb] test."

te$=string$(len(chaine99$)," ")
zz%=dll_call4("ReplaceAllStringsBetweenDelimiters",adr(chaine99$),adr(crochet_gauche$),adr(crochet_droit$),adr(te$))
chaine99$=trim$(te$)

message "'"+chaine99$+"'"
terminate
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

Nombre de messages : 11088
Age : 69
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Problème avec RemoveStringBetweenDelimiters.   Sam 30 Déc 2017 - 17:31

Si tu essayais comme ceci (après avoir rechargé la DLL):
Code:
dim te$, chaine99$, zz%, crochet_gauche$, crochet_droit$, remplacement$

dll_on "kgf"

crochet_gauche$="["
crochet_droit$="]"

chaine99$="Test [aa] [bb] test."

te$=string$(500," ")
remplacement$ = "Coucou"
zz%=dll_call5("ReplaceAllStringsBetweenDelimiters",adr(chaine99$),adr(crochet_gauche$),adr(crochet_droit$),adr(remplacement$),adr(te$))
chaine99$=trim$(te$)

message "'"+chaine99$+"'"
terminate

J'avais oublié une ligne dans mon code source, et tu avais oublié un paramètre dans l'appel de la fonction. Mais comme ça, ça marchera très bien.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Pedro Alvarez

avatar

Nombre de messages : 1180
Date d'inscription : 19/01/2014

MessageSujet: Problème avec RemoveStringBetweenDelimiters.   Sam 30 Déc 2017 - 17:43

Bonjour.

@Klaus.

Désolé, mais le problème persiste avec le code suivant.

Code:
dim te$, chaine99$, zz%, crochet_gauche$, crochet_droit$, remplacement$

dll_on "kgf"

crochet_gauche$="["
crochet_droit$="]"

chaine99$="Test [aa] [bb] test."

te$=string$(len(chaine99$)," ")
remplacement$ = "Coucou"
zz%=dll_call5("ReplaceAllStringsBetweenDelimiters",adr(chaine99$),adr(crochet_gauche$),adr(crochet_droit$),adr(remplacement$),adr(te$))
chaine99$=trim$(te$)

message "'"+chaine99$+"'"
terminate
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

Nombre de messages : 11088
Age : 69
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Problème avec RemoveStringBetweenDelimiters.   Sam 30 Déc 2017 - 17:53

Pas su tout? As-tu rechargé la DLL comme le l'ai dit ? En plus, tu n'as pas appliqué le code que j'au envoyé. Dans ta version, tu ne réserves pas assez de place pour la variable en sortie. Regarde le vrai résultat, en chargeant la variable te$ correctement:
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Pedro Alvarez

avatar

Nombre de messages : 1180
Date d'inscription : 19/01/2014

MessageSujet: Problème avec RemoveStringBetweenDelimiters.   Sam 30 Déc 2017 - 19:32

Bonsoir.

@Klaus.

J'ai bien rechargé la dll, et même redémarré le PC, au cas où.
Mais rien n'y fait, le code bloque toujours à la ligne d'appel de la DLL.

Pour info, j'ai la version 822 de KGF.

Code:
dim te$, chaine99$, zz%, crochet_gauche$, crochet_droit$, remplacement$

dll_on "kgf"

crochet_gauche$="["
crochet_droit$="]"

chaine99$="Test [aa] [bb] test."

te$=string$(255," ")
remplacement$ = "Coucou"
zz%=dll_call5("ReplaceAllStringsBetweenDelimiters",adr(chaine99$),adr(crochet_gauche$),adr(crochet_droit$),adr(remplacement$),adr(te$))
message zz%
chaine99$=trim$(te$)

message "'"+chaine99$+"'"
terminate
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

Nombre de messages : 11088
Age : 69
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Problème avec RemoveStringBetweenDelimiters.   Sam 30 Déc 2017 - 23:48

Est-ce que la DLL extraite est bien celle du 30/12/2017 à 17h27 ?

A tout hasard, je remets la distribution, identique bien sûr, mais on ne sait jamais... Il suffit de recharger la DLL - je n'ai rien changé, vue qie ça marche ici...
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Marc

avatar

Nombre de messages : 869
Age : 57
Localisation : TOURS
Date d'inscription : 17/03/2014

MessageSujet: Re: Problème avec RemoveStringBetweenDelimiters.   Dim 31 Déc 2017 - 0:16

Bonsoir à tous,
Chez moi, c'est OK, j'ai bien les deux "Coucou".
Spoiler:
 
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

Nombre de messages : 11088
Age : 69
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Problème avec RemoveStringBetweenDelimiters.   Dim 31 Déc 2017 - 1:05

Merci, Marc !
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Minibug

avatar

Nombre de messages : 3030
Age : 51
Localisation : Vienne (86)
Date d'inscription : 09/02/2012

MessageSujet: Re: Problème avec RemoveStringBetweenDelimiters.   Dim 31 Déc 2017 - 10:39

Bonjour tous le monde !

Du coup j'ai fais le test aussi sur mon Windows 7.32. drunken
J'ai un premier message avec '0' puis ensuite le message comme Marc ! Wink
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://gpp.panoramic.free.fr
Pedro Alvarez

avatar

Nombre de messages : 1180
Date d'inscription : 19/01/2014

MessageSujet: Problème avec RemoveStringBetweenDelimiters.   Dim 31 Déc 2017 - 10:58

Bonjour.

Eh bien, après un nouveau téléchargement de kgf.dll, tout fonctionne correctement maintenant.
Je n'ai pas trouvé la raison du problème d'hier.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: Problème avec RemoveStringBetweenDelimiters.   

Revenir en haut Aller en bas
 
Problème avec RemoveStringBetweenDelimiters.
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» [/résolu] problème avec java à l'instalation :-/
» Problème avec Java
» [Résolu] problème avec avira
» Problème avec décodeur Tv
» problème avec Outlook

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: A l'aide!-
Sauter vers: