Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    Funzione di sostituzione carattere

    Salve a tutti, come va??? È un bel po' che non passo da queste parti...

    Ho un problema con il Javascript, piuttosto semplice a dire il vero... solo che, non essendo molto pratico con il JS non riesco a risolvere...

    Sto creando una sorta di "traduttore" che mi legga il testo immesso in un form e che sostituisca ogni carattere con un altro, solo che non riesco a trovare la funzione adatta.

    In poche parole, come posso fare per fare in modo che "se c'è A allora scrivi B, se c'è B allora scrivi C" e così via???

    Grazie 1000 a tutti voi...

    PS: so che nell'esporre i miei problemi sono più incomprensibile di Trapattoni quando parla inglese

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Dato che con il replace ti si ingrippa presto ti conviene ciclare i caratteri della stringa e per ognuno trovato in una stringa di check sostituirlo con quello che occupa la medesima posizione in un'altra stinga... esempio (dato che sono stato molto piu' criptico di te )
    codice:
    chk_in = "abcdefghijk... eccetera";
    chk_out = "zsdfckrmhoqp... eccetera";
    entra = document.mioForm.miaArea.value; // o quello che e'
    esce = ""; // stringa risultante
    for (var i=0;i<entra.length;i++) {
      c = entra.substr(i,1)
      p = chk_in.indexOf(c);
      esce += (p>=0) ? chk_out.substr(p,1) : c ; // i caratteri non trovati escono intatti
    }
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    Utente di HTML.it L'avatar di carlomarx
    Registrato dal
    Oct 2009
    Messaggi
    1,669
    Invece di stringa.substr(posizione,1) esiste stringa.charAt(posizione)... l'hanno inventato apposta

  4. #4
    Wooooooooooow... semplicemente magici... vi ringrazio moltissimo...

    Solo che c'è un problemino...

    Teoricamente le lettere maiuscole [A-Z] dovrebbero venire "tradotte" con due caratteri...

    Ad ogni modo, grazie milllllleeeeee!!!! Sto forum qua è una chicca... pieno di esperti sempre pronti a darti una mano...

    ARIGATOU!

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.