von MajorWindbeutel |
So hier ist der Script wie ich die Smilies zähle:
Da ich aber leider auch noch Standart Smilies hatte also diese:
usw aber zum Glück nur 5 davon habe ich das so gelöst:
1:
2:
3:
4:
5:
6:
7:
8: |
$smile1 = substr_count($nachricht,":-)");
$smile2 = substr_count($nachricht,":-D");
$smile3 = substr_count($nachricht,":-|");
$smile4 = substr_count($nachricht,";-)");
$smile5 = substr_count($nachricht,":-o");
$smile_gesammt = $smile1+$smile2+$smile3+$smile4+$smile5;
|
Die anderen 30 Smilies waren zum Glück leichter
1:
2:
3:
4: |
$smilies =preg_match_all ("/:[\.a-z0-9]+:+?/", $nachricht, $out);
$count_smilies = count($out[0]) + $smile_gesammt;
|
Dann hat man in der Vari ($count_smilies) die Anzahl aller Smilies, also auch diese .
Allerdings müssen bei diese Form die Smilies so ausshen :
:blub:
Denn er such nach Strings die mit : anfagen in der mitte die erlaubten Buchstaben und Zahlen haben und am ende eine : haben.
So ich hoffe man kann mich verstehen wenn nicht fragt nach.
|
von MajorWindbeutel |
Habs mit RegExp gemacht werd denn Code morgen posten bin zur Zeit am Server einrichten.
Danke an alle die geholfen haben! |
von Can |
Geht mit preg_match_all bestimmt auch, aber ich kenn mich mit RegExps nicht aus. Wenn du's damit nicht machen willst, schreib dir ne eigene Ersetzungsroutine, sprich: Du hast die Smileys in nem Array und suchst dann in der Schleife, ob noch ein Smiley in dem Text vorkommt, wenn ja, ersetzt du den und erhöhst den Zähler. Falls Zähler <= 3, wird Smiley durch den jeweligen HTML-Code, ansonsten durch nen Leerstring ersetzt. So in etwa kannst du das machen. |
von MajorWindbeutel |
So dan ich RegEx nicht raffe mach ich das so:
$a = substr_count("$nachricht", ":mic:");
$b = substr_count("$nachricht", ":arm:");
Ich schreibe für jeden smilie diesen Kram pluse ;) das dann alles und weiß wieviel Smilies da sind.
Aber bevor ichd as jetzt 30mal schreib wollt ich fragen ob man das evtl durch ne Funktion verkürzen könnte wenn ja sagt mir wie.
Danke |
von MajorWindbeutel |
Ich weiß awrum meine Schleife net geht der probier 3mal alle Smilies umzusetzen hmm.
Giibt es icht ne einfacher möglichkeit ohne Reg.....? |
|