Robert: Variablen aus Modul benutzen

Beitrag lesen

Hallöle,

ich will mir eine kleine Bibliothek mit häufiger benötigten Regular Expressions bauen, damit ich zukünftig Korrekturen daran nur noch im Modul, nicht aber in zig Scripts vornehmen muß. Leider scheitere ich aber an meinen Perl-Kenntnissen zu Modulen (hab bisher praktisch nur vordefinierte Module benutzt, keine eigenen).

Hier mal meine zwei zum Testen verwendeten Dateien:
Zuerst das Modul RE.pm:

  
package RE;  
use strict;  
use warnings;  
require Exporter;  
  
@ISA = qw(Exporter);  
@EXPORT = qw($isodate);  
  
our $isodate = qr/\b\d{4}-\d{2}-\d{2}\b/;  
1;  

und jetzt das kleine Testscript retest.pl

  
use strict;  
use warnings;  
use RE;  
foreach ( "AAABBB", "a 2005-02-07 c" )  
{  
    print $_."\n" if m/$RE::isodate/;  
}  

Anstelle der Ausgabe
a 2005-02-07 c
erhalte ich
Name "RE::isodate" used only once: possible typo at D:\Perl\retest.pl line 6.
Use of uninitialized value in regexp compilation at D:\Perl\retest.pl line 6.
Use of uninitialized value in regexp compilation at D:\Perl\retest.pl line 6.
AAABBB
a 2006-02-11 c

Ok, daß ich beide Strings bekomme, ist eine Folge des uninitialized value, da der tatsächlich genutzte Regular Expression leer ist, also alles matcht.

Was mache ich falsch?

(ja, ich weiß, der RE für das Datum ist noch suboptimal, da auch 1111-99-99 usw. durchgeht - aber das kann und werde ich noch überarbeiten, wenn ich das Ding erstmal überhaupt zum Laufen bekommen habe)

TIA
cu,
Robert