Charles: Problem bei Ersetzen mit Groß-/Kleinschreibung

Hi, ich habe folgendes Problem beim Ersetzen:
Es soll ein Suchbegriff hervorgehoben werden (mit <i>...</i>), ohne dass die Groß- bzw. Kleinschreibung verändert wird.

Beispiel:
$Suchbegriff ist "medizin"
$Text: "Dieser Mediziner hat wenig medizinische Kenntnisse."
$Text soll hinterher sein:
"Dieser <i>Medizin</i>er hat wenig <i>medizin</i>ische Kenntnisse."

Wenn ich jetzt so arbeite:
$Text = s/$suchbegriff/<i>$suchbegriff</i>/g;
wird nur das klein geschriebene "medizin"ische mit <i></i> hervorgehoben.
Wenn ich stattdessen /gi setze:
$Text = s/$suchbegriff/<i>$suchbegriff</i>/gi;
werden zwar beide Wort-Vorkommen hervorgehoben, aber zugleich wird das Wort "Mediziner" dann in Kleinschreibung umgewandelt und das Ergebnis ist:
"Dieser <i>medizin</i>er hat wenig <i>medizin</i>ische Kenntnisse."

Wie kann ich das vermeiden? Es soll die Gross-/Kleinschreibung in $Text im Original beibehalten werden, aber es soll trotzdem jeder String  "medizin" und auch jeder String "Medizin" hervorgehoben werden.

Ich tüftele jetzt seit 2 Stunden erfolglos herum und bin für Tipps mehr als dankbar.
Charles

  1. Hallo,

    ~~~perl

    $str=~/($suchausdruck)/<i>$1</i>/gi;

      (ungetestet)  
      kannst gerne mal im SELFHTML Kapitel für Perl vorbeischauen.  
      
    gruss
    
    -- 
    no strict;  
    no warnings;  
      
    Meine Signatur hat Urlaub.
    
    1. »  kannst gerne mal im SELFHTML Kapitel für Perl vorbeischauen.

      gruss

      Danke, läuft! (Nach 9 Stunden Arbeit an einem Perl-Script sollte man aufhören und was Schönes machen.)

      1. Hallo,

        Danke, läuft! (Nach 9 Stunden Arbeit an einem Perl-Script sollte man aufhören und was Schönes machen.)

        was gibts Schöneres als Perl und reguläre Ausdrücke? :)

        gruss

        --
        no strict;
        no warnings;
        Meine Signatur hat Urlaub.