Schulze: Reguläre Ausdrücke: $variable ersetzen

Hallo,
also ich habe einen String, in dem Variable erhalten sind:
<?php
$string = 'Ein Text mit $variablen
und einer $ander_var ';

Die enthaltenen Variablen würde ich jetzt gerne verändern, allerdings habe ich noch Problem beim regulären Ausdruck:

$string = preg_replace("/\$(.*?)[ \n]/si", "&lt;b>\1&lt;/b> ", $string);

echo nl2br($string);
?>

Also Ausgabe erhalte ich:
Ein Text mit <b>variablen
</b> und einer <b>ander_var</b>

Das Problem ist jetzt, dass <b>variablen\n</b> noch ein Zeilenumbruch (\n) enthalten ist.

Bei der späteren Ausgabe stört diese Leerzeile extrem, weill der restliche Script darauf angewiesen ist, dass dort _kein_ leerzeichen ist.

Evt. weiß einer von euch ja Rat.

Mit freundlichen Grüßen
Schulze

  1. hi

    $string = 'Ein Text mit $variablen
    und einer $ander_var ';

    Das Problem ist jetzt, dass <b>variablen\n</b> noch ein Zeilenumbruch (\n) enthalten ist.

    vielleicht ist es besser wenn du schreibst:
    $string = "Ein Text mit $variablen und einer $ander_var ";

    hoffe, ich konnte helfen

    lg
    azok

    --
    Murphys Law: "Alles Schöne im Leben ist entweder illegal, ungesetzlich oder es macht dick."
    Selfcode: ie:% fl:( br:> va:) ls:& fo:) rl:( n4:° ss:| de:] js:| ch:( sh:) mo:) zu:)
    1. Hallo,
      das würde zwar gehen, allerdings ist es wichtig dass dort auch Zeilenumbrüche drin vorkommen können.

      MFG
      Schulze

      1. Hallo Schulze.

        das würde zwar gehen, allerdings ist es wichtig dass dort auch Zeilenumbrüche drin vorkommen können.

        Mein Tipp.

        Gruß, Ashura

        --
        Selfcode: sh:( fo:) ch:? rl:( br:^ n4:& ie:{ mo:) va:) de:> zu:) fl:( ss:| ls:[ js:|
        Try it: Become an Opera Lover in 30 days
      2. Hallo,
        also ich habe eine zwischen Lösung:

        <?php
        $string = 'Ein Text
        mit $var
        und einer $ander-var';

        $string = preg_replace("/\$([a-zA-Z0-9_-]{1,})/si", "&lt;b>\1&lt;/b>", $string);

        echo nl2br($string);
        ?>

        Kennt jmd. evt. eine Liste mit erlaubten Zeichen für eine Variable.

        MFG
        Schulze

        1. Hallo,
          O_o habs im Manual gefunden:

          $string = preg_replace("/\$([a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*)/si", "&lt;b>\1&lt;/b>", $string);

          MFG
          Schulze