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