E' possibile contare quante volte compare un determinato numero in una stringa (o array)?
es. ho un array con i valori q8,c4,p12,f1,p1
voglio sapere quante volte compare 1 (ma non 12, quindi la risposta è 2 volte)
grazie mille, ciao!
E' possibile contare quante volte compare un determinato numero in una stringa (o array)?
es. ho un array con i valori q8,c4,p12,f1,p1
voglio sapere quante volte compare 1 (ma non 12, quindi la risposta è 2 volte)
grazie mille, ciao!
Molto artigianale e scritta ora 'al volo'
Array.prototype.esamina = function(trova){
trovato = 0
ExLenght = trova.length
for(a=0;a<this.length;a++){
for(b=0;b<this[a].length;b++){
if(this[a].substr(b,1) == trova){
trovato++
}
}
}
return trovato
}
arr = ['q8','c4','p12','f1','p1']
trace(arr.esamina('1'))
grazie mille, ora ci provo, anche se sinceramente per ora non ho capito nulla, vado a studiare cosa vuol dire "prototype",non capisco a cosa serve ExLenght e non capisco come funziona il tutto... Sono a buon punto no?![]()
Dunque in questi 10 minuti ho fatto una ricerchina veloce e ho capito qualcosina, se non ho capito male, quello ke hai scritto pero' conta la riccorrenza degli 1(inteso come 'cifra' e non 'numero')e nel caso di array ke ho proposto restituisce 3. Grazie lo stesso, chiedo scusa se ho capito male, accetto altri consigli!! Ciao![]()
Array.prototype.esamina = function(trova){
trovato = 0
ExLenght = trova.length
for(a=0;a<this.length;a++){
-----> if(this[a].length<3){ <-----
for(b=0;b<this[a].length;b++){
if(this[a].substr(b,1) == trova){
trovato++
}
}
}
}
return trovato
}
trace(Arrayestratte.esamina('1'))
Penso di aver risolto!ho aggiunto una righina...
Cmq ancora nn ho capito a cosa serve ExLenght = trova.length
scusate se ho postato mille volte... a volte basta fare una piccola provagrazie mille cmq questo forum è fantastico, c'è sempre qualcuno disponibile ad aiutarti, un sacco di gente da cui imparare, io ho 21 anni e flash mi diverte molto, mi piacerebbe imparare bene e magari trovarmi qualche lavoretto da fare,grazie mille per tutto quello che mi insegnate. Ciao
Sì puoi risolvere in quel modo, però una stringa tipo
qa1
non verrebbe esaminata e quindi l'1 non verrebbe conteggiato
Certo se tutte le tue stringa saranno del tipo che hai postato prima e quindi le stringhe con più di 2 caratteri avranno tutte numeri maggiori di 1 può andare anche bene![]()
sisi è così, sono tutte di quel tipo, c'e' una lettera sola e un numero di max 2 cifre, in questo modo trovo la ricorrenza per i numeri a 1 cifra, ora sto facendo la ricorrenza x i numeri a 2 cifre, grazie ciao!
Se sono tutte in quel modo puoi anche usarla così, non sarà "portabile" in altri progetti ma si fa di necessità virtù magari
Ciao, alla prossima![]()
Ciao! Grazie di nuovo, ma non mi hai ankora spiegato a cosa serve:
ExLenght = trova.length
Almeno imparo ankora qualcosa! Ciao
Mi sono dimenticato di toglierlo io![]()
Volevo usarlo inizialmente per fare il substr basandosi sulla lunghezza della stringa passata, ma poi ho usato un metodo diverso e mi sono dimenticato di cancellare quella riga
L'idea in pratica era di fare un substr dei caratteri necessari, quindi
substr(b,ExLength)
In tal modo passando alla funzione ad esempio il 12, avrebbe preso ogni volta 2 caratteri.
Poi siccome l'ho scritta al volo ho messo substr(b,1)![]()