Eingaben parsen aus _test_ wird <b>test</b>

Post Reply
Message
Author
eq-ne

Eingaben parsen aus _test_ wird <b>test</b>

#1 Post by eq-ne »

hi

ich benötige folgendes.

ich habe in einem gästebuch folgende Möglichkeit zu Eingabe:

_Das ist fett_ und das nicht, _aber das wieder_

daraus soll

Das ist fett und das nicht, aber das wieder

werden .. wie kann ich das realisieren, ohne dass ich den string Zeichen für zeichen surchgehen muss.
Hat jemand nen Regulären Ausdruck dafür parat ?

Danke und Grüße

User avatar
Lateralus
prolinux-forum-admin
Posts: 1238
Joined: 05. May 2004 7:35

#2 Post by Lateralus »

Ich denke mal, dass du von PHP redest. Hier ein Link:

http://www.selfphp.de/funktionsreferenz ... eplace.php

Das würde dann in etwa so aussehen:

Code: Select all

<?php

$string = "_test_";
$string = eregi_replace&#40;'&#40;_&#41;&#40;*&#41;&#40;_&#41;', '<b>\2</b>', $string&#41;;

?php>
Vielleicht muss dieser Befehl mehrmals durchlaufen... Allerdings habe ich hier gerade keinen PHP-Server, bei dem ich das testen könnte. Ich würde dir übrigens empfehlen für die Formatierung nicht die alte HTML-Schreibweise zu verwenden, sondern CSS zu benutzen.

eq-ne

#3 Post by eq-ne »

leider klappt das so nicht.

ich brauche

_fett = fett

_fett_ nicht fett _fett = fett nicht fett fett

_fett_ _fett_ nicht fett = fett fett nicht fett

ich habe das so hier realisiert, möchte es jedoch mit Reg. Ausdrücken haben:

$input = "_balbalbla_ balbal _fett";

Code: Select all

      $myString = $input;
      $input = "";
      $counter=0;
      for&#40;$e=0; $e<strlen&#40;$myString&#41;; $e++&#41;
      &#123;
        if&#40;$myString&#91;$e&#93; == '_'&#41;
        &#123;
          $counter++;
          if&#40;$counter % 2 == 0&#41;
          &#123;
            $output .= '</b>';
          &#125;
          else
          &#123;
            $output .= '<b>';
          &#125;
        &#125;
        else
        &#123;
          $output .= $myString&#91;$e&#93;;
        &#125;
        if&#40;$e == strlen&#40;$myString&#41;-1&#41;
        &#123;
          $output .= '</b>';
        &#125;
      &#125;


Post Reply