Sapete percaso dove posso trovare tutti i metodi e le proprietà della classe stringa?
per esempio mi interessa sapere il metodo che in vb era substring....
grazie![]()
Sapete percaso dove posso trovare tutti i metodi e le proprietà della classe stringa?
per esempio mi interessa sapere il metodo che in vb era substring....
grazie![]()
variabile = "pippo"
left(variabile, 2) restituisce "pi"
right(variabile, 2) restituisce "po"
mid(variabile, 1, 2) restituisce "ip"
prude il dito, lui sdraiato
ha giocato a guardie e ladri col ladro sbagliato
grazie....
ho provato ma non mi riconosce mid!
mi da questo errore!
Microsoft VBScript runtime (0x800A0005)
Invalid procedure call or argument: 'Mid'
mid fa parte di vbscript... probab hai scritto male la funzione. posta un po' di codice
vbscript?
no asp!
il codice è questo :
function ean13(numero)
factor=1
for i= 0 to 11
'prendo una ad una le cifre
char= Mid(numero,i,1)
'le moltiplico ora * 1 ora * 3 e le appiccico una all'altra
sum= sum + char * factor
factor= 4 - factor
next
x=1000-sum
lunghezza=len(x)
ean13 = mid (x,lunghezza-1,1)
response.write (ean13)
end function
questa è tutta la funzione....
è un algoritmo che calcola l' ultima cifra di un codice ean13(codice a barre lungo 13 cifre)
In questo modo scorro la mia stringa numerica e moltiplico tutte le cifre ora per 1 ora per 3....ecc..non ti preoccupare del resto, ti incasinerebbe e basta...
il problema è che non mi funziona sto cazzo di substring.
Te ne intendi di visual basic?
precisiamo: ASP *non e'* un linguaggio. vbscript *e'* un linguaggioOriginariamente inviato da ciaba69
vbscript?
no asp!
mangio basic da quando esiste...Originariamente inviato da ciaba69
Te ne intendi di visual basic?
cmq, se devi prendere l'ultimo carattere, usa RIGHT(stringa, 1)
bene, lo so so che asp non è un linguaggio!
Non centra nulla l' errore vbscript che da il browser con asp!!
e non devo prendere l' ultimo carattere! devo prendere carattere x carattere....
comunque quello che voglio fare in asp che ho fatto in vb è questo:
Dim factor As Int16 = 1
Dim sum, i As Int16
For i = 0 To 11
sum += TextBox1.Text.Substring(i, 1) * factor
factor = 4 - factor
Next
dove in TextBox1.Text c'è la stringa
la tua funzione
va in crisi quando la lunghezza di x e' 1codice:lunghezza=len(x) ean13 = mid (x,lunghezza-1,1)
cmq, fare questa cosa
e fare quest'altracodice:lunghezza=len(x) ean13 = mid (x,lunghezza,1)
e' esattamente lo stesso. anzi, no, RIGHT e' piu' veloce...codice:ean13=right(x,1)
spiega, che' non ho capito...Originariamente inviato da ciaba69
bene, lo so so che asp non è un linguaggio!
Non centra nulla l' errore vbscript che da il browser con asp!!![]()
si hai ragione, ma se usi il right devi usare lo step-1 fino ad arrivare al primo carattere. perche complicarsi la vita?
parti dal 1 e arrivi all' ultimo...più semplice no?
Comunque l' errore era che il len ragiona in base 1 non in base 0 come substring!e quindi si incazza quando gli dici di partire dal carattere "0".
Per quanto riguarda la velocità, non ci sono problemi perchè il calcolo lo deve fare su una stringa lunga 13 caratteri, quindi la differenza di tempo di calcolo non si nota....
Comunque grazie mille per il tuo aiuto, sei stato molto gentile!
Usi icq?