DLeWando: ein zeichen aus string löschen

hi perl profis,

ich habe das problem, das ich nur 1 zeichen aus einem string löschen möchte! auch wenn das zeichen doppelt vorkommt.

beispiel:

$text = "hallo";

jetzt soll das erste "l" herausgelöscht werden, damit ich als ergebnis "halo" habe

wie bekomme ich das hin?

  1. Moin!

    wie bekomme ich das hin?

    Dazu mußt Du erstmal genau wissen, was Du löschen willst.

    $string=~ s/l//;
    würde z.B. das erste "l" löschen.

    $string= substr($string, 0, 2) . substr($string,3);
    würde z.b. das dritte Zeichen löschen.

    In beiden Fällen ist Dein "l" weg.

    -- Skeeve

    1. Moin!

      wie bekomme ich das hin?
      Dazu mußt Du erstmal genau wissen, was Du löschen willst.

      $string=~ s/l//;
      würde z.B. das erste "l" löschen.

      $string= substr($string, 0, 2) . substr($string,3);
      würde z.b. das dritte Zeichen löschen.

      In beiden Fällen ist Dein "l" weg.

      -- Skeeve

      super! danke dir für die schnelle hilfe ... das $string=~ s/l//; hat's gebracht :)

      ich habe nämlich in sämlichen dokus nur $string=~ s/l//g; gefunden und damit löscht er ja alle "l"

      1. Hallo DLeWando!

        ich habe nämlich in sämlichen dokus nur $string=~ s/l//g; gefunden und damit löscht er ja alle "l"

        Na klar, weil das Flag g für "global" steht. Er findet alle Vorkommen im zu durchsuchenden String. Hier erhälst Du eine Übersicht der Flags hinter Regulären Ausdrücken.

        Viele Grüße aus Frankfurt/Main,
        Patrick

        --

        _ - jenseits vom delirium - _
        <hatehtehpehdoppelpunktslashslashwehwehwehpunktatomicminuseggspunktcomslash>