Thread Regex - Exakten String ersetzen
(6 answers)
Opened by YAPD at 2021-04-18 18:02
Keine Ahnung, ob ich Dich hiermit richtig verstehe...
Ich würde es nicht erst splitten und dann ein Substitute drüber jagen. Sondern entweder mit einem Regex-Match den letzten Teil vom Rest trennen; oder komplett am :: splitten und dann die gewünschten Teile verwenden. Variante 1: Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 #! /usr/bin/env perl use strict; use warnings; use 5.020; my $package = "Kernel::Extensions::IMCR::Loader"; my ( $module, $caller ) = $package =~ m{(\S+)::([^:]+)$}; say "Package: $package"; say "Module: $module"; say "Caller: $caller"; __END__; Variante 2: Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 #! /usr/bin/env perl use strict; use warnings; use 5.020; my $package = "Kernel::Extensions::IMCR::Loader"; my @elements = split m/::/, $package; my $caller = pop @elements; my $module = join "::", @elements; say "Package: $package"; say "Module: $module"; say "Caller: $caller"; __END__; Last edited: 2021-04-19 09:51:55 +0200 (CEST) meine Beiträge: I.d.R. alle Angaben ohne Gewähr und auf Linux abgestimmt!
Die Sprache heisst Perl, nicht PERL. - Bitte Crossposts als solche kenntlich machen! |