Pedro
Nombre de messages : 1549 Date d'inscription : 19/01/2014
| Sujet: Nouvelle commande. Sam 5 Mar 2016 - 9:06 | |
| Bonjour.
@Jack.
Je souhaiterais la création d'une nouvelle commande, nommée lastinstr(), qui permettrait de rechercher la position d'une sous-chaîne dans une chaîne, mais à partir de la fin de la chaîne, à l'inverse de instr.
Merci. | |
|
Invité Invité
| Sujet: Re: Nouvelle commande. Sam 5 Mar 2016 - 10:51 | |
| C'est une très bonne commande, j'en ai eu plus d'une fois besoin. J'utilise cette solution pour combler cette lacune. - Code:
-
dim a$,b$,i% a$ = "je cherche le dernier espace" a$ = reverse$(a$) i% = instr(a$," ") b$ = reverse$(left$(a$,i%-1)) a$ = reverse$(right_pos$(a$,i%+1)) message "«"+ b$ + "»" + chr$(13) + "«" + a$ + "»"
' c'est plus complexe pour un mot à rechercher a$ = "je cherche le mot 'dernier' dans le dernier espace" a$ = reverse$(a$) i% = instr(a$,reverse$("dernier"))+ len("dernier") b$ = reverse$(left$(a$,i%-1)) a$ = reverse$(right_pos$(a$,i%)) message "«"+ b$ + "»" + chr$(13) + "«" + a$ + "»" J'espère que celle-ci sera développée. |
|
JL35
Nombre de messages : 7095 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Nouvelle commande. Sam 5 Mar 2016 - 12:58 | |
| Ou une toute petite sub: - Code:
-
SUB Rinstr(ch$,sq$) ' recherche de sq$ dans ch$ à partir de la fin (~Instr inversé) -> ki% IF VARIABLE("ki%") = 0 THEN DIM ki% FOR ki% = LEN(ch$)-LEN(sq$)+1 TO 1 STEP -1 IF MID$(ch$, ki%, LEN(sq$)) = sq$ THEN EXIT_FOR NEXT ki% END_SUB | |
|
Contenu sponsorisé
| Sujet: Re: Nouvelle commande. | |
| |
|