Differenze tra le versioni di "Left..Right..Mid"
Riga 1: | Riga 1: | ||
− | Left | + | Left(”Gambas-it.org”, 3) |
− | Right | + | Right(”Gambas-it.org”, 3) |
− | Mid | + | Mid(”Gambas-it.org”, 4, 2) |
''' Estrapola una porzione di testo da una stringa''' | ''' Estrapola una porzione di testo da una stringa''' | ||
---- | ---- | ||
Non c’è niente da fare, prima o poi capiterà di dover manipolare i dati presenti in una stringa di testo. | Non c’è niente da fare, prima o poi capiterà di dover manipolare i dati presenti in una stringa di testo. | ||
Gambas2 ci viene in aiuto con queste tre istruzioni: | Gambas2 ci viene in aiuto con queste tre istruzioni: | ||
− | ''' | + | '''Left''' (sinistra) |
− | ''' | + | '''Right''' (destra) |
− | ''' | + | '''Mid''' (in mezzo) |
L’utilizzo di queste istruzioni è molto semplice: | L’utilizzo di queste istruzioni è molto semplice: | ||
− | ''' | + | '''Left''' estrae i dati partendo da sinistra; guardando la riga di codice sopra riportato avremo la stampa della parola ''Gam''. |
− | ''' | + | '''Right''' estrae i dati partendo da destra; guardando la riga di codice sopra riportato avremo la stampa della parola ''org''. |
− | ''' | + | '''Mid''' estrae i dati partendo da una posizione specificata e con un intervallo specificato; guardando la riga di codice sopra riportato avremo la stampa della parola ''as''. |
− | Attenzione, la posizione di partenza e l’intervallo è in funzione dei caratteri, la posizione 0 (zero) non esiste e l’intervallo è il numero di caratteri da estrapolare. | + | Attenzione, la posizione di partenza e l’intervallo è in funzione dei caratteri, la posizione 0 (zero) non esiste (il primo carattere di una stringa è sempre a posizione 1), e l’intervallo è il numero di caratteri da estrapolare. |
Vediamo di seguito come estrapolare una parte di una parola con un esempio di codice che potrà tornarci utile nei nostri progetti: | Vediamo di seguito come estrapolare una parte di una parola con un esempio di codice che potrà tornarci utile nei nostri progetti: | ||
+ | |||
+ | ---- | ||
DIM variabile AS String | DIM variabile AS String | ||
Riga 26: | Riga 28: | ||
variabile = “Gambas-it.org” | variabile = “Gambas-it.org” | ||
FOR tmp = 1 TO Len(variabile) | FOR tmp = 1 TO Len(variabile) | ||
− | IF Mid | + | IF '''Mid(variabile, tmp, 3)''' = “bas” THEN |
− | Message.Info(”Trovata la parola ” & Mid | + | Message.Info(”Trovata la parola ” & '''Mid(variabile, tmp, 3)''') |
ENDIF | ENDIF | ||
NEXT | NEXT | ||
+ | |||
+ | ---- | ||
Analizziamo ogni singola riga per comprenderne meglio il significato: | Analizziamo ogni singola riga per comprenderne meglio il significato: | ||
Riga 39: | Riga 43: | ||
''FOR tmp = 1 TO Len(variabile)'' comunichiamo al sistema che valori può assumere tmp, ovvero da 1 alla lunghezza (Len) di variabile, nel nostro caso 13. | ''FOR tmp = 1 TO Len(variabile)'' comunichiamo al sistema che valori può assumere tmp, ovvero da 1 alla lunghezza (Len) di variabile, nel nostro caso 13. | ||
− | ''IF Mid | + | ''IF Mid(variabile, tmp, 3) = “bas” THEN'' chiediamo al sistema che deve controllare il valore di variabile (o meglio il 'Mid' di variabile), se questo valore è uguale a “bas” allora deve fare qualche cosa |
− | ''Message.Info(”Trovata la parola ” & Mid | + | ''Message.Info(”Trovata la parola ” & Mid(variabile, tmp, 3))'' ad ogni valore di variabile uguale a “bas” il sistema stampa la frase “Trovata la parola ” e la parola trovata, ovviamente tale frase sarà stampata una sola volta in quanto la parola “bas” è presente una sola volta all’interno di “Gambas-it.org”. |
''ENDIF'' termina il codice iniziato con IF. | ''ENDIF'' termina il codice iniziato con IF. | ||
''NEXT'' procediamo con un nuovo valore fino al raggiungimento del numero 13. | ''NEXT'' procediamo con un nuovo valore fino al raggiungimento del numero 13. | ||
+ | |||
+ | ---- | ||
+ | |||
+ | '''Nota:''' Le istruzioni descritte hanno le stesse funzioni di quelle in Visual Basic, e in Gambas esistono anche le nomenclature classiche del Basic: '''Left$''', '''Right$''' e '''Mid$'''. Questi alias sono presenti per compatibilità con il Visual Basic, e probilmente scompariranno (come alias) dalle librerie di Gambas. |
Versione delle 15:59, 25 set 2008
Left(”Gambas-it.org”, 3) Right(”Gambas-it.org”, 3) Mid(”Gambas-it.org”, 4, 2)
Estrapola una porzione di testo da una stringa
Non c’è niente da fare, prima o poi capiterà di dover manipolare i dati presenti in una stringa di testo. Gambas2 ci viene in aiuto con queste tre istruzioni: Left (sinistra) Right (destra) Mid (in mezzo)
L’utilizzo di queste istruzioni è molto semplice:
Left estrae i dati partendo da sinistra; guardando la riga di codice sopra riportato avremo la stampa della parola Gam.
Right estrae i dati partendo da destra; guardando la riga di codice sopra riportato avremo la stampa della parola org.
Mid estrae i dati partendo da una posizione specificata e con un intervallo specificato; guardando la riga di codice sopra riportato avremo la stampa della parola as.
Attenzione, la posizione di partenza e l’intervallo è in funzione dei caratteri, la posizione 0 (zero) non esiste (il primo carattere di una stringa è sempre a posizione 1), e l’intervallo è il numero di caratteri da estrapolare.
Vediamo di seguito come estrapolare una parte di una parola con un esempio di codice che potrà tornarci utile nei nostri progetti:
DIM variabile AS String DIM tmp AS Integer variabile = “Gambas-it.org” FOR tmp = 1 TO Len(variabile) IF Mid(variabile, tmp, 3) = “bas” THEN Message.Info(”Trovata la parola ” & Mid(variabile, tmp, 3)) ENDIF NEXT
Analizziamo ogni singola riga per comprenderne meglio il significato:
DIM variabile AS String dichiarazione della variabile (nome e tipo)
DIM tmp AS Integer dichiarazione della variabile (nome e tipo)
FOR tmp = 1 TO Len(variabile) comunichiamo al sistema che valori può assumere tmp, ovvero da 1 alla lunghezza (Len) di variabile, nel nostro caso 13.
IF Mid(variabile, tmp, 3) = “bas” THEN chiediamo al sistema che deve controllare il valore di variabile (o meglio il 'Mid' di variabile), se questo valore è uguale a “bas” allora deve fare qualche cosa
Message.Info(”Trovata la parola ” & Mid(variabile, tmp, 3)) ad ogni valore di variabile uguale a “bas” il sistema stampa la frase “Trovata la parola ” e la parola trovata, ovviamente tale frase sarà stampata una sola volta in quanto la parola “bas” è presente una sola volta all’interno di “Gambas-it.org”.
ENDIF termina il codice iniziato con IF.
NEXT procediamo con un nuovo valore fino al raggiungimento del numero 13.
Nota: Le istruzioni descritte hanno le stesse funzioni di quelle in Visual Basic, e in Gambas esistono anche le nomenclature classiche del Basic: Left$, Right$ e Mid$. Questi alias sono presenti per compatibilità con il Visual Basic, e probilmente scompariranno (come alias) dalle librerie di Gambas.