-
[Perl] regex
Guten Tag,
ich hätte da ein kleines Problem. Sitze an einem Projekt und habe noch keine ahnung vorn Perl. Wie kann ich am besten so eine Ausgabe in Perl
PHP-Code:
app-doc/kdelibs-apidocs-3.1.5
in "kdelibs-apidocs-3.1.5" bekommen. Habe schon viel gesucht. Aber ich denke auch nach dem falschen Suchbegriff. Oder kann man das vieleicht sogar schon mit grep machen ?Wäre für jede hilfe sehr dankbar.
Danke Daim
-
Code:
$a = (split /\//, $variable)[-1]
sollte es tun.
-
OK danke, werde es gleich testen.
Daim
-
In Perl geht das mit einem regulären Ausdruck oder noch besser mit File::Basename, aber wenn Du schon fragst, ob grep das nicht auch kann,
Code:
basename app-doc/kdelibs-apidocs-3.1.5
gibt Dir "kdelibs-apidocs-3.1.5 " zurück....
in Perl zum Beipiel mit:
Code:
#!/usr/bin/perl
use strict;
use File::Basename;
my $Path = 'app-doc/kdelibs-apidocs-3.1.5';
my $Filename = basename($Path);
print $Filename;
-
Auch dafür vielen Dank. Versuche es gerade alles bischen mehr zu verstehen um es einzubauen. Lese die Daten nämlich aus einer Datei aus.
Daim :)
-
Wenn Du das in einem Perl Skript machst, dann kannst Du den Code ja auch problemlos in eine Schleife einbauen.
-
Ja das ist auch schon so gelöst heute morgen. Nur leider ließ er nicht komplett bis zu ende der Zeile aus nur paar zeichen nach dem " / ". Lese irgendwie die Datei falsch aus. Aber beide Lösungen gingen bei mir *g*
Daim
-
wie liest Du die Datei denn ein?
-
Funktioniert mittlerweile. Hatte kleinen Fehler drin.
Danke
-
wäre klasse, wenn du den Code posten würdest, dann können auch andere davon profitieren :)
-
Naja ich weiß net ob ich das darf. Aber ich denke jeder der sich besser einliest in perl könnte das Problem lösen. Bin halt PHP Coder, und musste für ein Projekt kurz was in perl machen. Und da ich es in der Arbeit gemacht habe, weiß ich halt net ob das posten erlaubt ist. Sonst gerne ;)
mfg Daim