Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 18

Discussione: Array e Split

  1. #1
    Utente di HTML.it L'avatar di Mizushi
    Registrato dal
    Aug 2005
    Messaggi
    1,125

    Array e Split

    Buongiorno, da una stringa di questo tipo:

    I-3-Alessandro, I-5-Virgilio, O-8-Giovanni
    vorrei ottenere:

    I
    3
    Alessandro
    I
    5
    Virgilio
    O
    8
    Giovanni
    Ho scritto questo:

    codice:
    n = trim(pulisci(request.form("n")))
    
    arr1 = split(n,", ")
    for each item in arr1
    arr2 = split(item,"-")
    n1 = arr2(0)
    arr3 = arr2(1)
    n2 = arr3
    next
    Ma ottengo:
    I
    3
    Dove sbaglio?

  2. #2
    Utente di HTML.it
    Registrato dal
    Jul 2003
    Messaggi
    254
    intanto arr2 dovrebbe avere 3 elementi e tu ne leggi solo due, poi non si capisce che ne fai di queste variabili, ed infine perchè fai
    arr3 = arr2(1)
    n2 = arr3
    e non
    codice:
    n2=arr2(1)
    a che ti serve arr3?

  3. #3
    Utente di HTML.it L'avatar di Mizushi
    Registrato dal
    Aug 2005
    Messaggi
    1,125
    Ho capito, grazie così funziona:

    codice:
    n = trim(pulisci(request.form("n")))
    
    arr1 = split(n,", ")
    for each item in arr1
    arr2 = split(item,"-")
    n1 = arr2(0)
    arr3 = arr2(1)
    n2 = arr3
    arr4 = arr2(2)
    n3 = arr4
    next
    Acrei un'altra domanda, sempre nella stringa iniziale:

    codice:
    I-3-Alessandro, I-5-Virgilio, O-8-Giovanni
    è possibile con qualche funzione ricavare:

    codice:
    Alessandro, Virgilio, Giovanni

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2003
    Messaggi
    254
    continuo a non capire a cosa ti servano arr3 e arr4, comunque...

    codice:
    for each item in arr1
       arr2 = split(item,"-")
       n1 = arr2(0)
       n2 = arr2(1)
       n3 = arr2(2)
       nomi=nomi  & n3 & ", "
    next
    nomi=left(nomi,len(nomi)-2))      ' x cancellare l'ultimo ", "

  5. #5
    Utente di HTML.it L'avatar di Mizushi
    Registrato dal
    Aug 2005
    Messaggi
    1,125
    Scusa ma io non conosco a priori la stringa finale; il mio era un esempio infatti la stringa potrebbe essere:

    codice:
    I-3-Alessandro, I-5-Virgilio, O-8-Giovanni
    ma anche:

    codice:
    I-3-Alessandro, I-5-Virgilio
    ed anche:

    codice:
    I-3-Alessandro, I-5-Virgilio, O-8-Giovanni, 0-6-Francesca
    ed anche:

    codice:
    I-3-Alessandro
    Mi spiego?

  6. #6
    Utente di HTML.it
    Registrato dal
    Jul 2003
    Messaggi
    254
    per i primi 3 casi non c'è problema, per l'ultimo aggiungi un controllo prima di cancellare gli ultimi due caratteri dalla stringa nomi (lo fai solo se l'array ha almeno due elementi)

  7. #7
    Utente di HTML.it L'avatar di Mizushi
    Registrato dal
    Aug 2005
    Messaggi
    1,125
    Originariamente inviato da elfa
    per i primi 3 casi non c'è problema, per l'ultimo aggiungi un controllo prima di cancellare gli ultimi due caratteri dalla stringa nomi (lo fai solo se l'array ha almeno due elementi)
    Scusa non ti seguo.

  8. #8
    Utente di HTML.it
    Registrato dal
    Jul 2003
    Messaggi
    254
    anzi, mi correggo
    per l'ultimo aggiungi un controllo prima di cancellare gli ultimi due caratteri dalla stringa nomi (lo fai solo se l'array ha almeno due elementi)
    non serve, perchè indipendenetemente dal numero di elementi quando esci dal ciclo la stringa finisce con un ", " che devi eliminare

  9. #9
    Utente di HTML.it L'avatar di Mizushi
    Registrato dal
    Aug 2005
    Messaggi
    1,125
    ...continuo a non capire...

    la stringa finisce così:

    codice:
    I-3-Alessandro, I-5-Virgilio, O-8-Giovanni
    dov'è che vede la ultima virgola? :master:

  10. #10
    Utente di HTML.it
    Registrato dal
    Jul 2003
    Messaggi
    254
    codice:
      nomi=nomi  & n3 & ", "

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.