Beefy Boxes and Bandwidth Generously Provided by pair Networks
go ahead... be a heretic

Re^3: storing pre-compiled binary regexes

by Random_Walk (Prior)
on Apr 15, 2008 at 13:31 UTC ( #680511=note: print w/replies, xml ) Need Help??

in reply to Re^2: storing pre-compiled binary regexes
in thread storing pre-compiled binary regexes

OK, not sure if I am doing something wrong but from my testing Perl 5.10 can not do this either

This is perl, v5.10.0 built for MSWin32-x86-multi-thread (with 3 registered patches, see perl -V for more detail)
Here is an attempt to store some compiled regex
#!/usr/bin/perl #create the Storable file use warnings; use Storable; use Data::Dumper; my %sigs; while (<DATA>){ chomp; ($name,$value) = split(/\s+=\s+/,$_); next unless $value; $sigs{$name}= qr/$value/; } store(\%sigs, 'z1.bin') or die "Can't store %a in z1.bin !\n"; print Dumper \%sigs; exit;
And here I try to read it back again
#!/usr/bin/perl #read the Storable file #use strict; use warnings; use Storable; use Data::Dumper; my %sigs = %{retrieve('z1.bin')} or die "Unable to retrieve from +n:$!\n" ; print Dumper \%sigs; exit; __DATA__ 1_Friday = Friday 2_random = [Rr]andom 3_catch any = .*
These are the results of the two dumps:
C:\Perl_5_10\play>..\bin\perl $VAR1 = { '3_catch any' => qr/(?-xism:.*)/, '2_random' => qr/(?-xism:[Rr]andom)/, '1_Friday' => qr/(?-xism:Friday)/ }; C:\Perl_5_10\play>..\bin\perl $VAR1 = { '3_catch any' => qr/Regexp=SCALAR(0x1a6bca4)/, '2_random' => qr/Regexp=SCALAR(0x1a7c90c)/, '1_Friday' => qr/Regexp=SCALAR(0x1c47c7c)/ };
if I try to use the read back regex they fail to match


Pereant, qui ante nos nostra dixerunt!

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://680511]
[hippo]: Easier just to go and look at the source, no?
[Eily]: mostly because perl isn't compiled in the usual sense of the meaning, you can't execute the opcodes directly, you need the perl engine
[muthusathish]: i dont have the environment too, but i need to get the logics so that i can re-wite
[Eily]: what makes you think your dll is "perl based" ?
[muthusathish]: i dont have source code too
[muthusathish]: it is used in VB 6 appln, while debugging is getting error
[hippo]: Somebody has. Ask the author.
[Eily]: muthusathish ok, the fact that you can't tell what perl has to do with it proves it: this is not perl

How do I use this? | Other CB clients
Other Users?
Others drinking their drinks and smoking their pipes about the Monastery: (8)
As of 2018-02-23 09:14 GMT
Find Nodes?
    Voting Booth?
    When it is dark outside I am happiest to see ...

    Results (301 votes). Check out past polls.