FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» Logiciel de planétarium.
Problème avec la fonction 'instr'. Emptypar Pedro Hier à 15:50

» Un autre pense-bête...
Problème avec la fonction 'instr'. Emptypar Froggy One Jeu 21 Nov 2024 - 15:54

» Récupération du contenu d'une page html.
Problème avec la fonction 'instr'. Emptypar Pedro Sam 16 Nov 2024 - 14:04

» Décompilation
Problème avec la fonction 'instr'. Emptypar JL35 Mar 12 Nov 2024 - 19:57

» Un album photos comme du temps des grands-mères
Problème avec la fonction 'instr'. Emptypar jjn4 Mar 12 Nov 2024 - 17:23

» traitement d'une feuille excel
Problème avec la fonction 'instr'. Emptypar jjn4 Jeu 7 Nov 2024 - 3:52

» Aide-mémoire mensuel
Problème avec la fonction 'instr'. Emptypar jjn4 Lun 4 Nov 2024 - 18:56

» Des incomprèhension avec Timer
Problème avec la fonction 'instr'. Emptypar Klaus Mer 30 Oct 2024 - 18:26

» KGF_dll - nouvelles versions
Problème avec la fonction 'instr'. Emptypar Klaus Mar 29 Oct 2024 - 17:58

» instructions panoramic
Problème avec la fonction 'instr'. Emptypar maelilou Lun 28 Oct 2024 - 19:51

» Figures fractales
Problème avec la fonction 'instr'. Emptypar Marc Ven 25 Oct 2024 - 12:18

» Panoramic et Scanette
Problème avec la fonction 'instr'. Emptypar Yannick Mer 25 Sep 2024 - 22:16

» Editeur d étiquette avec QR évolutif
Problème avec la fonction 'instr'. Emptypar JL35 Lun 23 Sep 2024 - 22:40

» BUG QR Code DelphiZXingQRCode
Problème avec la fonction 'instr'. Emptypar Yannick Dim 22 Sep 2024 - 11:40

» fichier.exe
Problème avec la fonction 'instr'. Emptypar leclode Ven 20 Sep 2024 - 19:02

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Novembre 2024
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
252627282930 
CalendrierCalendrier
Le deal à ne pas rater :
Boutique Nike : -25% dès 50€ sur TOUT le site Nike avec le code ...
Voir le deal

 

 Problème avec la fonction 'instr'.

Aller en bas 
+4
Jean Claude
Yannick
ambroise
pan59
8 participants
Aller à la page : 1, 2  Suivant
AuteurMessage
pan59

pan59


Nombre de messages : 367
Age : 67
Localisation : Wattignies
Date d'inscription : 16/10/2011

Problème avec la fonction 'instr'. Empty
MessageSujet: Problème avec la fonction 'instr'.   Problème avec la fonction 'instr'. EmptyLun 16 Juil 2012 - 17:39

Bonjour.

Comment faire pour simuler la fonction instr (chaine1, chaine2, P) afin de rechercher la position de la chaine2 dans chaine1, à partir de la position P ?

Cette fonction m'est d'une grande utilité.

Merci de votre aide.
Revenir en haut Aller en bas
ambroise




Nombre de messages : 264
Localisation : Haute-Savoie
Date d'inscription : 29/04/2012

Problème avec la fonction 'instr'. Empty
MessageSujet: Re: Problème avec la fonction 'instr'.   Problème avec la fonction 'instr'. EmptyLun 16 Juil 2012 - 20:07

Ce script donnera la position du dernier "amis" à partir de "sont" :

Code:

dim a$, b$, position%
a$ = "Les amis de mes amis sont mes amis"
b$ = "amis"

position% = 22

print instr(right$(a$,(len(a$)+1) - position%),b$)


Dernière édition par ambroise le Lun 16 Juil 2012 - 20:18, édité 2 fois
Revenir en haut Aller en bas
http://genealogie.cwebh.org/index.html
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Problème avec la fonction 'instr'. Empty
MessageSujet: re   Problème avec la fonction 'instr'. EmptyLun 16 Juil 2012 - 20:08

instr( chaine1$,chaine2$) te renvoie déjà la position de départ de la chaine2$ dans la chaine1$

où est le souci ?.....

après tu peux jouer avec len() pour le nombre de caractères de chaque chaine$....
Revenir en haut Aller en bas
Jean Claude

Jean Claude


Nombre de messages : 5950
Age : 70
Localisation : 83 Var
Date d'inscription : 07/05/2009

Problème avec la fonction 'instr'. Empty
MessageSujet: Re: Problème avec la fonction 'instr'.   Problème avec la fonction 'instr'. EmptyLun 16 Juil 2012 - 20:11

Salut pan59,

Si c'est P que tu recherches, alors tu utilises INSTR comme ceci: P=instr (chaine1, chaine2) . P te donne la position du premier caractère de chaine2 dans chaine1.

A+

Edit:Salut à Ygeronimi et Ambroise, vous m'avez doublé Very Happy
Revenir en haut Aller en bas
ambroise




Nombre de messages : 264
Localisation : Haute-Savoie
Date d'inscription : 29/04/2012

Problème avec la fonction 'instr'. Empty
MessageSujet: Re: Problème avec la fonction 'instr'.   Problème avec la fonction 'instr'. EmptyLun 16 Juil 2012 - 20:19

Salut à toi... peu de monde sur le forum ces jours : c'est les vacances !
Revenir en haut Aller en bas
http://genealogie.cwebh.org/index.html
Jean Claude

Jean Claude


Nombre de messages : 5950
Age : 70
Localisation : 83 Var
Date d'inscription : 07/05/2009

Problème avec la fonction 'instr'. Empty
MessageSujet: Re: Problème avec la fonction 'instr'.   Problème avec la fonction 'instr'. EmptyLun 16 Juil 2012 - 20:30

Abroise a écrit:
peu de monde sur le forum ces jours : c'est les vacances !

Oui, même Jack se fait rare..... Very Happy

A+
Revenir en haut Aller en bas
Jack
Admin
Jack


Nombre de messages : 2394
Date d'inscription : 28/05/2007

Problème avec la fonction 'instr'. Empty
MessageSujet: Re: Problème avec la fonction 'instr'.   Problème avec la fonction 'instr'. EmptyLun 16 Juil 2012 - 21:07

Citation :
Oui, même Jack se fait rare.....

Je regarde le forum quotidiennement.
Mais je viens juste de rentrer d'un long séjour professionnel à l'étranger et qui m'a littéralement épuisé (je n'ai pas pris beaucoup de repos).
Je vais me reposer un peu, puis je vais continuer le compilateur Panoramic et Toonic.
Revenir en haut Aller en bas
https://panoramic.1fr1.net
papydall

papydall


Nombre de messages : 7017
Age : 74
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

Problème avec la fonction 'instr'. Empty
MessageSujet: Re: Problème avec la fonction 'instr'.   Problème avec la fonction 'instr'. EmptyLun 16 Juil 2012 - 21:13

Ça c’est une bonne nouvelle.
Repose-toi bien.
A+
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Problème avec la fonction 'instr'. Empty
MessageSujet: re   Problème avec la fonction 'instr'. EmptyLun 16 Juil 2012 - 21:30

Jack ....le retour

Cà c'est une bonne nouvelle !

Reposes toi un peu ....mais pas trop ,on s'y habitue vite... lol!
Revenir en haut Aller en bas
Jean Claude

Jean Claude


Nombre de messages : 5950
Age : 70
Localisation : 83 Var
Date d'inscription : 07/05/2009

Problème avec la fonction 'instr'. Empty
MessageSujet: Re: Problème avec la fonction 'instr'.   Problème avec la fonction 'instr'. EmptyMar 17 Juil 2012 - 7:46

Un peu de repos et çà repart, Very Happy

Bon courage...

A+
Revenir en haut Aller en bas
pan59

pan59


Nombre de messages : 367
Age : 67
Localisation : Wattignies
Date d'inscription : 16/10/2011

Problème avec la fonction 'instr'. Empty
MessageSujet: Problèmeavec la fonction instr.   Problème avec la fonction 'instr'. EmptyMar 17 Juil 2012 - 7:53

Bonjour et merci à tous de votre aide.

Cette fonction me manquait vraiment.

Serait-il possible d'intégrer ce 3è paramètre dans la prochaine version de Panoramic ?
Revenir en haut Aller en bas
Jean Claude

Jean Claude


Nombre de messages : 5950
Age : 70
Localisation : 83 Var
Date d'inscription : 07/05/2009

Problème avec la fonction 'instr'. Empty
MessageSujet: Re: Problème avec la fonction 'instr'.   Problème avec la fonction 'instr'. EmptyMar 17 Juil 2012 - 13:20

Pan59 a écrit:
Serait-il possible d'intégrer ce 3è paramètre dans la prochaine version de Panoramic ?

Je ne comprend pas ce qui te manque dans cette fonction, c'est quoi le 3ème paramètre ?

p=instr(chaine1$,chaine2$)

j'ai repris la démo du manuel pour info:
Code:
dim a$,b$,p
a$="bonjour les amis"
b$="les"
p=instr(a$,b$)
print P
' résultat=9

Précises ce qui te manque... Question

A+
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Problème avec la fonction 'instr'. Empty
MessageSujet: re   Problème avec la fonction 'instr'. EmptyMar 17 Juil 2012 - 13:25

Je te rejoins Jean Claude , je ne vois pas ce qui te manque Suspect

la fonction P% = instr( a$,b$) existe , la fonction len(a$) existe , il te suffit de les utilisées elles sont dans l'aide pour plus de détails.

Et le 3 ème paramètres Question Question Question Question Question Question ..........
Revenir en haut Aller en bas
Klaus

Klaus


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

Problème avec la fonction 'instr'. Empty
MessageSujet: Re: Problème avec la fonction 'instr'.   Problème avec la fonction 'instr'. EmptyMar 17 Juil 2012 - 13:27

Tu peux simuler ce paramètre comme suit:
Code:

pos% = instr(crit$,mid$(chaine$,p%,len(chaine$))
if pos%>0 then pos% = pos% + p% - 1
Cela fait exactement ce que tu cherches.

PS

Au besoin, je peux te faire une fonction DLL. J'ai une DLL nommée strings.dll, dans laquelle cette fonction trouverait logiquement sa place.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Jean Claude

Jean Claude


Nombre de messages : 5950
Age : 70
Localisation : 83 Var
Date d'inscription : 07/05/2009

Problème avec la fonction 'instr'. Empty
MessageSujet: Re: Problème avec la fonction 'instr'.   Problème avec la fonction 'instr'. EmptyMar 17 Juil 2012 - 14:01

Heu Klaus, t'es sur de ton coup... J'ai mis les variables pour essayer
Code:
dim crit$,chaine$,p%,pos%

crit$="les"
chaine$="Bonjour les amis"

pos% = instr(crit$,mid$(chaine$,p%,len(chaine$))
if pos%>0 then pos% = pos% + p% - 1

caption 0,str$(p%)+"|"+str$(pos%)

A+
Revenir en haut Aller en bas
Klaus

Klaus


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

Problème avec la fonction 'instr'. Empty
MessageSujet: Re: Problème avec la fonction 'instr'.   Problème avec la fonction 'instr'. EmptyMar 17 Juil 2012 - 14:17

C'est comme ça que ça marche:
Code:
dim crit$,chaine$,p%,pos%

crit$="les"
chaine$="Bonjour les amis"
p% = 3
pos% = instr(mid$(chaine$,p%,len(chaine$)),crit$)
if pos%>0 then pos% = pos% + p% - 1

caption 0,str$(p%)+"|"+str$(pos%)

Il fallait bien sûr mettre une valeur dans p% (0 n'étant pas une position valide) et j'avais malheurusement inversé les deux paramètres de INSTR. Donc, mon conseil est le suivant;
Code:

pos% = instr(mid$(chaine$,p%,len(chaine$)),crit$)
if pos%>0 then pos% = pos% + p% - 1

J'ai ajouté la fonction instr(adr(crit$),adr(chaine$),p%) à strings.dll.


Dernière édition par Klaus le Mar 17 Juil 2012 - 20:57, édité 1 fois
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
JL35




Nombre de messages : 7112
Localisation : 77
Date d'inscription : 29/11/2007

Problème avec la fonction 'instr'. Empty
MessageSujet: Re: Problème avec la fonction 'instr'.   Problème avec la fonction 'instr'. EmptyMar 17 Juil 2012 - 14:42

Dommage que tu n'aies pas adopté la syntaxe classique du basic, qbasic, freebasic...
pos% = INSTR([départ%,] source$, chainecherchée$)
et dommage que ça ne soit pas comme ça en natif Panoramic, la syntaxe actuelle resterait valable, ce serait simplement un ajout d'un paramètre optionnel (départ implicite = 1). Comme en basic.
Revenir en haut Aller en bas
pan59

pan59


Nombre de messages : 367
Age : 67
Localisation : Wattignies
Date d'inscription : 16/10/2011

Problème avec la fonction 'instr'. Empty
MessageSujet: Fonction instr.   Problème avec la fonction 'instr'. EmptyMar 17 Juil 2012 - 15:03

Finalement, j'utilise la routine suivante:

dim a$, b$, position%
a$ = "les amis de mes amis sont mes amis"
b$ = "amis"

position% = 18

print instr(right$(a$,(len(a$)+1) - position%),b$)+position%-1
Revenir en haut Aller en bas
Jean Claude

Jean Claude


Nombre de messages : 5950
Age : 70
Localisation : 83 Var
Date d'inscription : 07/05/2009

Problème avec la fonction 'instr'. Empty
MessageSujet: Re: Problème avec la fonction 'instr'.   Problème avec la fonction 'instr'. EmptyMar 17 Juil 2012 - 17:03

Merci Pan59, avec ta démonstration je comprend maintenant où tu voulais en venir "rechercher la chaine2 dans la chaine1, en donner la position, et continuer jusqu'à la fin de chaine1"

J'ai adapté le prog de Klaus pour montrer la finalité
Code:
label go
dim crit$,chaine$,p%,pos%
p% = 1
crit$="amis"
chaine$="Bonjour, les amis de mes amis sont mes amis"

go:
' Klaus
pos% = instr(mid$(chaine$,p%,len(chaine$)),crit$)
if pos%>0 then pos% = pos% + p% - 1
' -----
print str$(pos%)
if pos%>0
  p%=pos%+1:goto go
else
  end
end_if

Ta demande initial est, à mon avis, pas très explicite. Avec ton dernier message on comprend ce que tu voulais....

A+
Revenir en haut Aller en bas
pan59

pan59


Nombre de messages : 367
Age : 67
Localisation : Wattignies
Date d'inscription : 16/10/2011

Problème avec la fonction 'instr'. Empty
MessageSujet: Fonction instr.   Problème avec la fonction 'instr'. EmptyMar 17 Juil 2012 - 17:41

Bonjour.

Connaissez-vous la date de sortie de la nouvelle version de Panoramic, incluant le passage de paramètres ?

Je l'attends avec impatience.

Merci.
Revenir en haut Aller en bas
Klaus

Klaus


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

Problème avec la fonction 'instr'. Empty
MessageSujet: Re: Problème avec la fonction 'instr'.   Problème avec la fonction 'instr'. EmptyMar 17 Juil 2012 - 21:22

J'ai ajouté la fonction requise dans strings.dll. Voici un extrait de la doc:
Code:

    res% = dll_call3("instr",adr(crit$),adr(chaine$,p%)
        res%   position de crit$ dans chaine$, à partir de la position p%
        crit$   chaîne de caractères à chercher
        chaine$   chaîne de caractères dans laquelle il faut chercher
        p%   position à partir de laquelle on cherche
Cette fonction retourne la position de la chaîne crit$ à l’intérieur de la chaîne chaine$, en cherchant à partir de la position p%.  Si crit $n’est pas trouvé, la fonction retourne 0 (zéro). Sinon, la fonction retourne la position du premier caractère de crit$ dans chaine$.

Et voici comment on peut l'utiliser:
Code:

dim s$, mois$, p%, p1%, mm%
mois$ = "Janvier,Février,Mars,Avril,Mai,Juin,Juillet,Août,Septembre,Octobre,Novembre,Décembre,"

mm% = 5
' chercher le mois en lettres
p%  = 0
s$ = ","
dll_on "strings.dll"
while mm%>0
  p1% = p% + 1
  p% = dll_call3("instr",adr(s$),adr(mois$),p1%)
  mm% = mm% - 1
end_while
message "Le mois 5 s'appelle "+mid$(mois$,p1%,p%-p1%)
dll_off

end
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
pan59

pan59


Nombre de messages : 367
Age : 67
Localisation : Wattignies
Date d'inscription : 16/10/2011

Problème avec la fonction 'instr'. Empty
MessageSujet: Utilisation de le dll.   Problème avec la fonction 'instr'. EmptyMar 17 Juil 2012 - 21:32

Bonjour.

Merci de m'indiquer où l'on peut télécharger cette DLL.

Cordialement.
Revenir en haut Aller en bas
Klaus

Klaus


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

Problème avec la fonction 'instr'. Empty
MessageSujet: Re: Problème avec la fonction 'instr'.   Problème avec la fonction 'instr'. EmptyMar 17 Juil 2012 - 21:43

Comme pour toutes mes DLLs, c'est sur mon WebDav:
Site: http://www.mydrive.ch/
Identifiant: panoramic@klausgunther
Mot de passe: panoramic123
Dossier: DLL's
Il y a toutes mes DLLs, ainsi que les fichiers de documentation.

La doc de strings.dll est dans Autres_dll.rtf.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
pan59

pan59


Nombre de messages : 367
Age : 67
Localisation : Wattignies
Date d'inscription : 16/10/2011

Problème avec la fonction 'instr'. Empty
MessageSujet: Fonction instr.   Problème avec la fonction 'instr'. EmptyDim 22 Juil 2012 - 17:30

Bonjour.

Merci Klaus pour le travail accompli.

Il me manque encore une fonction importante:

mid$ avec seulement 2 paramètres, je m'explique:

Comment extraire une sous-chaîne B$ à partir d'une chaîne A$, et à partir d'une position P, et cela jusu'à la fin de la chaîne A$.

Exemple
----------

B$ = mid2$ ("forum de discussion", 10) donnerait "discussion".

Pourrait-elle être également ajoutée dans la DLL ?

Merci de la réponse..
Revenir en haut Aller en bas
ambroise




Nombre de messages : 264
Localisation : Haute-Savoie
Date d'inscription : 29/04/2012

Problème avec la fonction 'instr'. Empty
MessageSujet: Re: Problème avec la fonction 'instr'.   Problème avec la fonction 'instr'. EmptyDim 22 Juil 2012 - 17:55

Cette fonction existe :

Voilà une solution :
Code:
dim chaine$ , position%
chaine$ = "forum de discussions"
position% = 10
print right$(chaine$,len(chaine$) - position% + 1)


Dernière édition par ambroise le Dim 22 Juil 2012 - 18:20, édité 1 fois
Revenir en haut Aller en bas
http://genealogie.cwebh.org/index.html
Contenu sponsorisé





Problème avec la fonction 'instr'. Empty
MessageSujet: Re: Problème avec la fonction 'instr'.   Problème avec la fonction 'instr'. Empty

Revenir en haut Aller en bas
 
Problème avec la fonction 'instr'.
Revenir en haut 
Page 1 sur 2Aller à la page : 1, 2  Suivant
 Sujets similaires
-
» Problème avec 'instr'.
» Problème avec select case Probleme réglé merci
» Problème avec KGF.DLL.
» Problème avec la 3D.
» Problème avec KGF.CHM.

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: