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

    contare occorrenza stringa in testo

    ciao, vorrei trovare con una funzioncina il numero di volte che è stata scritta una stringa di testo tipo "ciao" in una textarea.

    Come si fa?



  2. #2
    Utente di HTML.it L'avatar di infinitejustice
    Registrato dal
    Nov 2001
    residenza
    Barcelona
    Messaggi
    772
    Ho fatto una funzione un po spartana, ma che funziona, probabilmente c'è un modo piu semplice per farlo... cmq per il momento


    <script>
    function cercaStringa(){
    var testo = document.form1.textfield1.value
    var parolaMagica = "ciao" //parola da cercare
    var i, totale
    for(i=0, totale = 0;i<testo.length;i++){
    if(testo.substring(i, i+parolaMagica.length) == parolaMagica){
    totale++
    }
    }
    window.alert(totale)
    }</script>


    In pratica lui prende il value del campo di testo e ricerca, partendo dalla prima lettera fino all'ultima, se nella substringa di 4 lettere che di volta in volta si forma c'è "ciao"...
    Live fast. Troll hard.
    Pythonist | Djangonaut | Puppeteer | DevOps | OpenStacker | Lost in malloc
    Team Lead @Gameloft Barcelona

  3. #3
    grazie! è quello che cercavo!

    funziona benissimo! :metallica

  4. #4
    Utente di HTML.it L'avatar di infinitejustice
    Registrato dal
    Nov 2001
    residenza
    Barcelona
    Messaggi
    772
    Ora che la riguardo mi sa che non c'è metodo migliore/piu breve :mavieni:
    Live fast. Troll hard.
    Pythonist | Djangonaut | Puppeteer | DevOps | OpenStacker | Lost in malloc
    Team Lead @Gameloft Barcelona

  5. #5
    Utente di HTML.it L'avatar di infinitejustice
    Registrato dal
    Nov 2001
    residenza
    Barcelona
    Messaggi
    772
    Originariamente inviato da mdsjack
    grazie! è quello che cercavo!

    funziona benissimo!
    Ohi :bubu: :mavieni: :metallica
    Live fast. Troll hard.
    Pythonist | Djangonaut | Puppeteer | DevOps | OpenStacker | Lost in malloc
    Team Lead @Gameloft Barcelona

  6. #6
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    un trucco con le RE

    <script>
    function cercaStringa(){
    var testo = document.form1.textfield1.value
    var parolaMagica = "ciao" //parola da cercare
    var i, totale
    var RE = new RegExp(parolaMagica,"gi")
    i = testo.length;
    testo = testo.replace(RE, "")
    totale = (i-testo.length) / parolaMagica.length
    alert(totale)
    }
    </script>

    ciao
    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

  7. #7
    scusa ma sono "anni"( ) che nn programmo in js... "gi" cosa significa? è come le regexp PCRE? ma cosa fa in questo script?:master:

  8. #8
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    codice:
    <script> 
    function cercaStringa(){ 
    var testo = document.form1.textfield1.value 
    var parolaMagica = "ciao" //parola da cercare 
    var i, totale 
    var RE = new RegExp(parolaMagica,"gi") // in effetti bastava "i" (ignore case)
    i = testo.length; // lunghezza originale della stringa
    testo = testo.replace(RE, "") // tolgo tutte le occorrenze di "ciao"
    totale = (i-testo.length) / parolaMagica.length // la lunghezza della parte di stringa mancante diviso la lunghezza di "ciao" mi da il numero di occorrenze :fagiano:
    alert(totale) 
    }
    </script>
    ciao
    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

  9. #9
    Originariamente inviato da br1
    ciao
    sicuro che nn è + lento?:master:

  10. #10
    Utente di HTML.it
    Registrato dal
    Dec 2001
    Messaggi
    3,259
    Originariamente inviato da mdsjack
    scusa ma sono "anni"( ) che nn programmo in js... "gi" cosa significa? è come le regexp PCRE? ma cosa fa in questo script?:master:
    dalla reference:

    new RegExp("pattern"[, "flags"])
    Parameters:

    pattern
    The text of the regular expression.

    flags
    If specified, flags can have one of the following values:


    g: global match

    i: ignore case

    gi: both global match and ignore case

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.