Seite 2 von 2

Re: str replace auf ganze Wörter anwenden

Verfasst: 09.04.2009 18:54
von Pyramide
TLoD hat geschrieben:

Code: Alles auswählen

        function formatierung($inhalte){

        // Search phrase pieces

            $SearchValues[] = '#\bINC\b#i';
            $SearchValues[] = '#\binc\b#i';

        // Replace phrase pieces

                $ReplacementValues[] = '<b><span style=\'color:#b10505\'>INC</span></b>';
                $ReplacementValues[] = '<b><span style=\'color:#b10505\'>INC</span></b>';

        return preg_replace($SearchValues, $ReplacementValues, $inhalte);
    }
Der Code funktioniert einwandfrei und verursacht keine Fehlermeldung. Solange du uns nicht den Code zeigst, der auch die Fehlermeldung verursacht, werden wir dir nicht helfen können.

Oder fährst du auch zu deinem Autohändler und sagst "mein Auto macht auf der Autobahn immer so komische Geräusche. Ich habe Ihnen hier mal das Auto meines Nachbarn mitgebracht, damit Sie sich das angucken können."? :roll:

Re: str replace auf ganze Wörter anwenden

Verfasst: 09.04.2009 19:20
von TLoD
So ich habe den Fehler gefunden.
Kann es sein das ich bei den SearchValues keine Sonderzeichen verwenden darf?
Ich wollte natürlich meine Smilies auch aus den Texten filtern lassen und ersetzen.

*EDIT*

So nun habe ich eine funktionierende Lösung gefunden. Weiß nicht ob es die beste ist aber es funzt wenigstens erstmal...

Code: Alles auswählen

function formatierung($inhalte){

        // Text

            $inhalte = preg_replace('#\bINC\b#i', '<b><span style=\'color:#b10505\'>INC</span></b>', $inhalte);
            $inhalte = preg_replace('#\binc\b#i', '<b><span style=\'color:#b10505\'>INC</span></b>', $inhalte);
            $inhalte = preg_replace('#\bATT\b#i', '<b><span style=\'color:#b10505\'>ATT</span></b>', $inhalte);
            $inhalte = preg_replace('#\batt\b#i', '<b><span style=\'color:#b10505\'>ATT</span></b>', $inhalte);;
            $inhalte = preg_replace('#\bRaid\b#i', '<b><span style=\'color:#b10505\'>RAID</span></b>', $inhalte);
            $inhalte = preg_replace('#\braid\b#i', '<b><span style=\'color:#b10505\'>RAID</span></b>', $inhalte);
            $inhalte = preg_replace('#\bRAID\b#i', '<b><span style=\'color:#b10505\'>RAID</span></b>', $inhalte);
            $inhalte = preg_replace('#\bOK\b#i', '<b><span style=\'color:green\'>OK</span></b>', $inhalte);
            $inhalte = preg_replace('#\bok\b#i', '<b><span style=\'color:green\'>ok</span></b>', $inhalte);
            $inhalte = preg_replace('#\bclean\b#i', '<b><span style=\'color:green\'>clean</span></b>', $inhalte);
            $inhalte = preg_replace('#\bClean\b#i', '<b><span style=\'color:green\'>clean</span></b>', $inhalte);
            $inhalte = preg_replace('#\bARKON\b#i', '<b><span style=\'color:#ffa300\'>ARKON</span></b>', $inhalte);
            $inhalte = preg_replace('#\bARK\b#i', '<b><span style=\'color:#ffa300\'>ARKON</span></b>', $inhalte);
            $inhalte = preg_replace('#\bArk\b#i', '<b><span style=\'color:#ffa300\'>ARKON</span></b>', $inhalte);
            $inhalte = preg_replace('#\bark\b#i', '<b><span style=\'color:#ffa300\'>ARKON</span></b>', $inhalte);
            $inhalte = preg_replace('#\bInva\b#i', '<b><span style=\'color:#ffa300\'>INVA</span></b>', $inhalte);
            $inhalte = preg_replace('#\binva\b#i', '<b><span style=\'color:#ffa300\'>INVA</span></b>', $inhalte);
            $inhalte = preg_replace('#\bINVA\b#i', '<b><span style=\'color:#ffa300\'>INVA</span></b>', $inhalte);
            $inhalte = preg_replace('#\bnicht erreicht\b#i', '<b><span style=\'color:#ffa300\'>nicht erreicht</span></b>', $inhalte);

	// Smilies

  	    $inhalte = str_replace(':)', '<img title=\'Smile\' src=\'/sl/images/smilies/smile.gif\'>', $inhalte);
	    $inhalte = str_replace('*g*', '<img title=\'Smile\' src=\'/sl/images/smilies/smile.gif\'>', $inhalte);
            $inhalte = str_replace(':P', '<img title=\'Tongue\' src=\'/sl/images/smilies/tongue.gif\'>', $inhalte);
  	    $inhalte = str_replace(':p', '<img title=\'Tongue\' src=\'/sl/images/smilies/tongue.gif\'>', $inhalte);
  	    $inhalte = str_replace(':(', '<img title=\'Sad\' src=\'/sl/images/smilies/sad.gif\'>', $inhalte);
            $inhalte = str_replace(':|', '<img title=\'Sad\' src=\'/sl/images/smilies/sad.gif\'>', $inhalte);
	    $inhalte = str_replace(':D', '<img title=\'Biggrin\' src=\'/sl/images/smilies/biggrin.gif\'>', $inhalte);
            $inhalte = str_replace('*fg*', '<img title=\'Biggrin\' src=\'/sl/images/smilies/biggrin.gif\'>', $inhalte);
  	    $inhalte = str_replace(';)', '<img title=\'Wink\' src=\'/sl/images/smilies/wink.gif\'>', $inhalte);
  	    $inhalte = str_replace('O_O', '<img title=\'Shocked\' src=\'/sl/images/smilies/shocked.gif\'>', $inhalte);
	    $inhalte = str_replace('*finger*', '<img title=\'FU\' src=\'/sl/images/smilies/finger.gif\'>', $inhalte);
            $inhalte = str_replace('keks', '<img title=\'Keks\' src=\'/sl/images/smilies/keks.gif\'>', $inhalte);
  	    $inhalte = str_replace('lol', '<img title=\'LoL\' src=\'/sl/images/smilies/auslachen.gif\'>', $inhalte);
  	    $inhalte = str_replace('gayfight', '<img title=\'Gayfight\' src=\'/sl/images/smilies/gayfight.gif\'>', $inhalte);
            $inhalte = str_replace('kotz', '<img title=\'Kotz\' src=\'/sl/images/smilies/kotz.gif\'>', $inhalte);
  	    $inhalte = str_replace('sabber', '<img title=\'Sabber\' src=\'/sl/images/smilies/sabber.gif\'>', $inhalte);
            $inhalte = str_replace('wallbash', '<img title=\'Wallbash\' src=\'/sl/images/smilies/wallbash.gif\'>', $inhalte);

            return $inhalte;

    }

Re: str replace auf ganze Wörter anwenden

Verfasst: 09.04.2009 23:45
von gn#36
Du darfst Sonderzeichen benutzen, allerdings gibt es bei Regulären Ausdrücken einige mit besonderer Bedeutung. Dazu gehören z.B.

Code: Alles auswählen

()[]{}-\$^*+.?
Wenn du die als Zeichen drin haben willst, dann musst du sie mit einem Backslash versehen, aus
Das Auto kostet $5000
wird also
Das Auto kostet \$5000
.

Re: str replace auf ganze Wörter anwenden

Verfasst: 10.04.2009 01:49
von Pyramide
Oder du verwendest [php:preg_quote]