NUMBER %STRSTRFROM%
Scopo: cerca la prima occorrenza
di una stringa all'interno di un'altra, partenda da una determinata
posizione.
Sintassi: | |||
%NUMBER% | %STRSTRFROM% | (%STRING% | s1, |
%STRING% | s2, | ||
%NUMBER% | from) |
Descrizione: Cerca una stringa s2 all'interno di s1 a partire dalla posizione indicata da from che esprime un indice in base 0.
Se from è negativo la ricerca
avviene in senso opposto (verso indici minori).
Il valore assoluto di from rappresenta
comunque l'indice che delimita la sottostringa di s1
interessata alla ricerca;
se from è negativo, tale sottostringa sarà
determinata dall'indice 0 iniziale fino all'indice rappresentato dal
valore assoluto di from;
se from è positivo tale sottostringa sarà
determinata dall'indice from iniziale fino
a fine stringa.
Il valore ritornato, in caso di esito positivo, rappresenta comunque
l'indice positivo del primo carattere che verifica la ricerca a
partire dall'indice 0 di s1.
La ricerca è case sensitive.
Valore restituito: valore numerico
Torna l'indice del primo carattere dell'occorrenza verificata in caso
di esito positivo
Se s2 è nullo o vuoto, il valore di
ritorno è rappresentato dall'indice di s2
successivo l'ultimo carattere.
Se s1 è nullo o vuoto, il valore di
ritorno è -1.
Se entrambi s2 e s1
sono nulli o vuoti, il valore di ritorno è 0.
Vedere anche: %STRISTRFROM%, %STRISTR%, %STRSTR%, Manipolazione dati / conversione / altro
Esempio:
%number%(c, 0)
%string%(a, "3D informatica di San Lazzaro di Savena")
%string%(b, "San")
%numcpy%(c, 0)
%write%(%itoa%(%strstrfrom%(a,b,c)))<br>
%numcpy%(c, 18)
%write%(%itoa%(%strstrfrom%(a,b,c)))<br>
%numcpy%(c, 19)
%write%(%itoa%(%strstrfrom%(a,b,c)))<br>
%numcpy%(c, -19)
%write%(%itoa%(%strstrfrom%(a,b,c)))<br>
%numcpy%(c, -20)
%write%(%itoa%(%strstrfrom%(a,b,c)))<br>
%strcpy%(b,"san")<br>
%numcpy%(c, 0)
%write%(%itoa%(%strstrfrom%(a,b,c)))<br>
Program output:
18
18
-1
-1
18
-1