Salve,
stasera avevo la necessità di validare un codice fiscale..venuto a conoscenza che le reg exp non sono sufficienti causa carattere di parità in fondo al cod.fiscale, ho fatto una ricerca su google (mitico motore) e ho trovato una discussione del forum di html.it:
http://forum.html.it/forum/showthrea...postid=3685886
la versione javascript della suddetta soluzione non l'ho testata, però mi serviva la traduzione in VBscript, ma quella postata da br1 non l'ho proprio capita (perchè erano omesse le cose?) e cmq non mi funzionava... quindi ho tradotto (aiutandomi anche con la versione di br1) quella javascript e questo è il risultato:
e finalmente dandogli il mio codicefiscale non mi ha dato errore...ora spero che a qualcuno serva e che qualcuno la testi meglio di me e/o la corregga in caso di erroricodice:function isCodiceFiscale(valore) dim nTempNum,nAppoNum,i,szTempCodFisc,szLastChar,szValued,szInValued szCodFisc=valore if len(trim(szCodFisc))<16 then isCodiceFiscale=false else szCodFisc =ucase(szCodFisc) szLastChar = right(szCodFisc,1) szTempCodFisc =left(szCodFisc,len(szCodFisc)-1) nTempNum = 0 i = 1 while i<=15 'I DISPARI szValued="B1A0KKPPLLC2QQD3RRE4VVOOSSF5TTG6UUH7MMI8NNJ9WWZZYYXX" szInValued=mid(szTempCodFisc,i,1) nAppoNum = instr(szValued,szInValued) nTempNum = nTempNum + ((nAppoNum-1) and &H7FFE) / 2 i = i + 1 if i<=15 then 'I PARI szValued="A0B1C2D3E4F5G6H7I8J9KKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ" szInValued=mid(szTempCodFisc,i,1) nAppoNum = instr(szValued,szInValued) nTempNum = nTempNum + ((nAppoNum-1) and &H7FFE) / 2 i = i + 1 end if wend nTempNum = (nTempNum mod 26) szValued="ABCDEFGHIJKLMNOPQRSTUVWXYZ" szValued= mid(szValued,nTempNum+1, 1) if szValued=szLastChar then isCodiceFiscale=true else isCodiceFiscale=false end if end if end function response.Write isCodiceFiscale("tutocodicefiscale")
![]()
ps: mi scuso con gli autori del citato post per la mia scopiazzatura

Rispondi quotando