Scomporre una stringa e caricare ogni parola in una variabile array

Da Gambas-it.org - Wikipedia.
Versione del 17 ago 2012 alle 21:52 di Vuott (Discussione | contributi) (Nuova pagina: Il caso in questione è quello in cui si ha una stringa, nella quale sono presenti anche dei valori in esadecimale A0 (carrello a capo + nuova riga), così da ottenere visivamente una ...)

(diff) ← Versione meno recente | Versione attuale (diff) | Versione più recente → (diff)

Il caso in questione è quello in cui si ha una stringa, nella quale sono presenti anche dei valori in esadecimale A0 (carrello a capo + nuova riga), così da ottenere visivamente una stringa con più righe, come nell'esempio sottostante:

Questo è il Wiki di Gambas-it
cioè è una collezione di documenti ipertestuali
che può essere modificata dai suoi utilizzatori

L'intenzione è quello di scomporre tale stringa in modo da distinguere ed inserire i vari gruppi di caratteri alfanumerici comprensibli (ossia le normali parole) e diversi dagli spazi, che formano la stringa, in una variabile array.

Poniamo il caso che quella stringa sia caricata tutta nella variabile stringa "wiki". Potremo adottare il seguente procedimento:

Private wiki As String = "' Contiene l'intera stringa sopra menzionata."


Public Sub Button1_Click()
Dim a As String
Dim aa As String[]
Dim j As Byte

' Eliminiamo innanzitutto dalla stringa tutti i valori esadecimali "A0",
' ossia il comando: carrello a capo + nuova riga, trasformandoli in semplici spazi.
' Questo per preparare la stringa alla successiva funzione ed affinché resti unica:
   a = Replace(wiki, "\n", " ")

' Si scompone, quindi, la stringa così ottenuta, ponendo come punto
' di divisione di ogni elemento dall'altro gli spazi. Si pone a "True" l'ultimo parametro
' della funzione "Split", in modo tale da assicurarsi completamente la non considerazione di qualsisi spazio.
' Nella variabile array "aa" avremo, quindi, una parola alfanumerica per ciascun elemento:
   aa = Split(a, " ", "", True)

' Andiamo a vedere il contenuto di ciascun elemento dell'array:
  for j = 0 to aa.Max
    Print aa[j]
  Next

End