Gestire il testo in un’App può sembrare banale, ma vi assicuro che è una funzione essenziale sia che sviluppiate giochi o lavoriate con la grafica.
- http://ai2.appinventor.mit.edu/reference/blocks/text.html
- https://docs.kodular.io/blocks/text/
- https://docs.thunkable.com/text
Contenuti:
- string
- join
- length
- is empty
- compare texts
- trim
- upcase
- downcase
- starts at
- contains
- contains any
- contains all
- split at first
- split at first of any
- split
- split at any
- split at spaces
- segment
- replace all
- obfuscated text
- is a string?
- reverse
- replace all mappings
“” (Blocco di stringhe)
Contiene una stringa di testo. Questa stringa può contenere qualsiasi carattere (lettere, numeri o altri caratteri speciali). Su App Inventor verrà considerato un oggetto Testo.
Join
Aggiunge tutti gli input per creare una singola stringa. Se nessun input, restituisce una stringa vuota.
lunghezza – lenght
Restituisce il numero di caratteri, inclusi gli spazi, nella stringa. Questa è la lunghezza della stringa di testo fornita.
è vuoto – is empty
Restituisce se la stringa contiene o meno caratteri (inclusi gli spazi). Quando la lunghezza della stringa è 0, restituisce true
, altrimenti restituisce false
.
confronta testi <> =
Indica se la prima stringa è lessicograficamente <,> o = al una seconda stringa. I valori di confronto si scelgono dal menu a discesa come da immagine. Secondo la tabella ASCII fondamentale, tutte le lettere maiuscole sono considerate più piccole o devono apparire prima delle lettere minuscole. gatto sarebbe> Gatto.
tagliare – trim
Rimuove qualsiasi spazio che precede o trascina la stringa di input e restituisce il risultato.
maiuscolo – upcase
Restituisce una copia dell’argomento stringa di testo convertito in maiuscolo.
minuscolo – downcase
Restituisce una copia del suo argomento di stringa di testo convertito in tutto minuscolo.
inizia a – starts at
Restituisce la posizione del personaggio in cui il primo carattere del pezzo appare per la prima volta nel testo, oppure 0 se non presente. Ad esempio, la posizione di Ana in “havana banana” è 4.
contiene – contains
Restituisce vero
se il pezzo appare nel testo; in caso contrario, restituisce false
.
contiene ciascuno – contains any
Restituisce vero
se uno qualsiasi dei pezzi nell’elenco dei pezzi appare nel testo; in caso contrario, restituisce false
. Questo blocco può essere ottenuto modificando il menu a discesa nel blocco contiene.
contiene tutti – contains all
Restituisce vero
se tutti i pezzi nell’elenco dei pezzi appaiono nel testo; in caso contrario, restituisce false
. Questo blocco può essere ottenuto modificando il menu a discesa nel blocco contiene.
diviso all’inizio – split at first
Divide il testo dato in due pezzi utilizzando la posizione della prima occorrenza di at
come punto di divisione e restituisce un elenco di due elementi composto dal pezzo prima del punto di divisione e dal pezzo dopo il punto di divisione. Dividere mela,banana,ciliegia,cibo per cani con una virgola come punto di divisione restituisce un elenco di due elementi: il primo è il testo mela e il secondo è il testo banana,ciliegia,cibo per cani. Nota che la virgola dopo mela non appare nel risultato, perché quello è il punto di divisione.
dividere all’inizio di qualsiasi – split at first of any
Divide il testo dato in un elenco di due elementi, utilizzando la prima posizione di qualsiasi elemento nell’elenco come punto di divisione. Dividendo I love apples bananas apples grapes dall’elenco [ba,ap]
porterebbe a un elenco di due elementi, il primo è I love e il secondo, ples bananas apples grapes.
Diviso – split
Divide il testo in pezzi usando come punti di divisione e produce un elenco dei risultati. Dividere one,two,three,four a , (virgola) restituisce l’elenco di 4 elementi (one two three four) . Dividere one-potato,two-potato,three-potato,four a -potato, restituisce l’elenco (one two three four) .
diviso in qualsiasi – split at any
Divide il testo specificato in un elenco, utilizzando ciascuno degli elementi con at
come punto di divisione e restituisce un elenco dei risultati. La suddivisione di appleberry,banana,cherry,dogfood con at
come l’elenco di due elementi [,rry]
restituisce un elenco di quattro elementi: (applebe banana che dogfood) .
diviso negli spazi – split at spaces
Divide il testo dato in qualsiasi occorrenza di uno spazio, producendo un elenco dei pezzi.
segmento – segment
Estrae parte del testo iniziando dalla posizione iniziale e continuando per i caratteri di lunghezza.
Questo blocco si può utilizzare per emulare le funzioni di Excel =SINISTRA e = DESTRA. Notare anche la funzione LUNGHEZZA che dà come risultato il numero 10.
Ad esempio:
La stessa cosa la possiamo fare col Visual coding emulando la funzione SINISTRA (Risultato: Apped):
E la funzione DESTRA (Risultato: ediA.it):
Naturalmente, in questo caso siamo stati costretti ad aggiungere il blocco lenght che ci permettte di stabilire la lunghezza della stringa.
Inutile dire che avremmo potuto utilizzare al posto del numero fisso 3 o 6, il risultato di una TextBox.
Infatti, in quest’altro esempio vediamo il testo troncato a destra e a sinistra in funzione dei numeri inseriti dall’utente nelle TextBox 6 e 7:
Se il testo da elaborare è AppediA.it, all’inserimento di 3 e 5, il risultato sarà pediA (senza formattazioni), cioè una stringa di 5 caratteri partendo dal terzo carattere della stringa di riferimento.
sostituisci tutto – replace all
Restituisce una nuova stringa di testo ottenuta sostituendo tutte le occorrenze della sottostringa con la sostituzione. Sostituisci tutto con Lei ama mangiare. Lei adora scrivere. Lei piace programmare come testo, Lei
come segmento e Anna
come sostituto porterebbe ad Anna ama mangiare. Anna adora scrivere. Anna piace programmare.
testo offuscato – obfuscated text
Produce testo, come un blocco di testo. La differenza è che il testo non è facilmente individuabile esaminando i contenuti dell’app. Utilizzalo quando crei app da distribuire che includono informazioni riservate, ad esempio chiavi API. Avvertenza: questo fornisce solo una protezione molto bassa contro avversari esperti.
è una stringa? – is a string
Restituisce vero
se l’ oggetto è un oggetto di testo, altrimenti falso
.
inversione – reverse
Invertire il testo dato. Ad esempio, “reverse” diventerebbe “esrever”.
sostituisci tutti i mapping – replace all mappings
Dato un dizionario di mappature come input, sostituisce le voci chiave nel testo con i valori corrispondenti nel dizionario. Restituisce il testo con i mapping applicati.
Esempio: sostituzione dei pronomi in prima persona in pronomi in seconda persona
Lo scopo di questo esempio, è quello di ricevere frasi in prima persona e sostituire il pronome in seconda persona.
Se impostiamo l’ordine preferito a dictionary, la frase: “you knew it yourself”, la parola ‘yourself’ contiene la stringa ‘you’. Poiché ‘you‘ appare per primo nel dizionario, sarà sostituito con ‘I‘, perciò ‘yourself’ diventa ‘Irself’ e la frase risultante è priva di significato: “I knew it Irself”.
Tuttavia, se scegli l’ordine longest string first (prima la stringa più lunga), la stringa più lunga ‘yourself‘ viene prima sostituita con ‘myself‘ e in seguito la stringa più corta ‘you’ viene sostituita con ‘I’ portando a una sostituzione di senso compiuto in: “I knew it myself”.
In questo caso il replace viene fatto dalla parola più lunga, quindi non ci possono essere sostituzioni di sillabe di parole più corte come nel primo esempio.
Di seguito le spiegazioni dei due attributi come da guida ufficiale.
Ordine del dizionario – dictionary order
Se viene specificato l’ordine del dizionario, nel caso in cui una voce chiave sia una sottostringa di un’altra voce chiave, la prima da sostituire si basa sull’ordine di voce nel dizionario (il primo viene sostituito per primo).
Primo ordine di stringa più lungo – longest string first order
Se viene specificato l’ordine di stringa più lungo, nel caso in cui una voce chiave sia una sottostringa di un’altra voce chiave, la prima da sostituire è quella più lunga.
Aggiornato al 22/08/2023 | |
Aggiornato al 01/01/2021 | |
Aggiornato al 01/01/2021 |
PDF Lista comparazione dei componenti di AI2 KODULAR THUNKABLEX agg.20210911
Vuoi avere più informazioni sul Coding visuale? Vai alla pagina dei Blocchi incorporati dove potrai imparare a scrivere il linguaggio di programmazione per App Inventor 2, Kodular e Thunkable X. Visita la pagina del Blog con le ultime notizie sulle le tre piattaforme. Nella pagina Documentazione troverai i collegamenti ai forum, il glossario, i link ai siti dei migliori programmatori, i download e tanti altri accessori.