Anzahl der Nummern/Zahlen in String

Lloyd

Erfahrenes Mitglied
Hi,

ich hab keine Funktion gefunden, die die Anzahl der Zahlen in einem String ermittelt.
Daher hab ich selbst ein Workaround geschrieben.
Vielleicht nütztzs dem einen oder anderen:
PHP:
function anz_number_in_string (string) {
	anz_num=0;
	zeichen_arr = string.split("");
	for (i=0;i<zeichen_arr.length;i++)  {
		zeichen=zeichen_arr[i];
		inti=int(zeichen);
		num=Number(inti);
		if (num>0) {
			anz_num++;
			}
		}
	return anz_num;
	}
Gibt es Verbesserungsvorschläge?

Gruss Lloyd
 
Zuletzt bearbeitet:
Hi,

PHP:
function single_numbers(str) {
	var amt = 0;
	for (var i=0; i<str.length; i++) {
		var n = parseInt(str.charAt(i));
		if (!isNaN(n)) {
			amt ++;
		}
	}
	return amt;
}
Zählt auch Nullen mit. ;)

gruß
.
 
Da hab ich wohl die Funktion Number() falsch verstanden. Sie gibt bei 0 leider keine 1 zurück.
Jetzt werden auch Nullen als Zahlen gesehen:
PHP:
function anz_number_in_string (string) {
	var anz_num=0;
	zeichen_arr = string.split("");
	for (i=0;i<zeichen_arr.length;i++)  {
		zeichen=zeichen_arr[i];
		zeichen++;
		if (zeichen>0) {
			anz_num++;
			}
		}
	return anz_num;
	}
Der Trick ist, dass bei Buchstaben das zeichen++; nicht funktioniert.
 
Ok ;),

aber gaanz saubere Vorgehensweise ist das nicht, und eher im PHP-Lager beliebt, wo es kaum Unterschiede zwischen numerischen Datentypen und Strings gibt.

Mich wundert eher, dass der Flashplayer (auch in AS 2.0) noch (bedingt) das Rechnen mit Strings erlaubt.

Gruß
.
 
Da warst du gleichschnell ;)
Deins ist doch eleganter (wieder was gelernt) , obwohl ich natürlich mein Skript benutzen werde, ist ja von mir :-)
 
Zurück