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

Discussione: funzione left

  1. #1

    funzione left

    non capisco perchè così funziona
    codice:
    parente=Instr(txt,"[")
    parte=Left(txt, parente)
    e così no

    codice:
    parente=Instr(txt,"[")
    parte=Left(txt, (parente-1))
    e neppure così
    codice:
    parente=Instr(txt,"[")
    parente=parente-1
    parte=Left(txt, parente)
    scusate ma il risultato di Instr non è un valore numerico?

    io voglio che mi identifichi dove si trova la prima occorrenza del valore ] e che mi legga dal testo originale "txt" solo fino alla lettera subito prima

    Two Beer or not Two Beer
    that is the question

    W. ShakesBEER

  2. #2
    se parente vale 1 o 0.... a casa mia la LEFT da' errore. metti una IF

  3. #3
    prima di falo ho provato anche se ne ero già sicuro ed il respons.write(parente) mi da 7 su una stringa di 123 caratteri, non capisco

    qui il codice completo
    codice:
    dim totale
    
    			   totale=Len(txt)
    			   dim parente
    			   dim parte
    			   dim conta
    			   dim ccc
    			   conta = 1
    			if Left(txt,1)<>"[" then
    			   do while not conta=volte
    			   parente=Instr(txt,"[")
    			   parente=parente-1
    			   parte=Left(txt, parente)
    			   
    			   response.Write("posizione parentesi aperta = "& parente &" ")
    			   response.Write("-----")
    			   response.Write("testo parte = "& parte &" ")
    			   response.Write("-----")
    			   txt=Right(txt,(totale-parente))
    			   totale=Len(txt)
    			   parente=instr(txt,"]")
    			   parente=parente-1
                               parte=Left(txt, parente)
    			   
    			   response.Write("posizione parentesi chiusa = "& parente &" ")
    			   response.Write("-----")
    			   response.Write("testo parte = "& parte &" ")
    			   response.Write("-----")
    			   txt=Right(txt,(totale-parente))
    			   totale=Len(txt)
    			   
    			   conta=conta+1
    			   loop
    			 end if
    voglio suddividere la stringa in "volte" parti quando non inizia con una [ in base alla posizione delle parentesi quadre e dopo creare un array composto dalle diverse parti della stringa

    ma continua a darmi questo errore

    Tipo di errore:
    Errore di run-time di Microsoft VBScript (0x800A0005)
    Chiamata di routine o argomento non validi: 'Left'
    Two Beer or not Two Beer
    that is the question

    W. ShakesBEER

  4. #4
    non fai prima a splittare su "[" ?

  5. #5
    forse si ma dopo devo anche splittare per ] e mi sa che è un casotto
    Two Beer or not Two Beer
    that is the question

    W. ShakesBEER

  6. #6
    posta una stringa di esempio

  7. #7
    Questa è una stringa di esempio:

    txt="cavallo [ASTERISCO] cane [LINETTA] cinghiale"

    devo essere in grado di dividere txt in n parti delimitate dalle parentesi quadre,queste parti le ho già contate e so che volte=5

    "cavallo "
    "[ASTERISCO]"
    " cane "
    "[LINETTA]"
    " cinghiale"

    gli spazi sono come da esempio e chiaramente non so cosa ci sarà scritto tra le quadre.

    Se solo la funzione Left mi funzionasse avrei risolto
    Two Beer or not Two Beer
    that is the question

    W. ShakesBEER

  8. #8

  9. #9
    non posso perche magari c'è una stringa del tipo

    cane [pallina] gatto topo [rinoceronte] uccello

    che va divisa in 5 parti dove la terza sarà " gatto topo "
    Two Beer or not Two Beer
    that is the question

    W. ShakesBEER

  10. #10
    sostituisci [ con |[ e ] con ]| e splitta su |

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.