Hi, Why don't you do like that :
@array = ( '^to: myprog', '^from: [EMAIL PROTECTED]' ); $STRING = read_mail_header(...); foreach (@array) { if($STRING=~ /$_/mi ) { # This should work # FOUND ............. } } or look into perldoc perlre Regards, Michel -----Message d'origine----- De: Ramprasad [mailto:[EMAIL PROTECTED] Date: mercredi 13 août 2003 08:51 À: [EMAIL PROTECTED] Objet: array of regular expressions on a string Hi all, I have an array of regular exps of which I want to match any of them in a string. How can I do this without eval. for eg. @array = ( '/^to: myprog/mi', '/^from: [EMAIL PROTECTED]/mi' ); $STRING = read_mail_header(...); foreach (@array) { if($STRING=~ $_ ) { # This does not work # FOUND ............. } } # NOTFOUND ...... I know I can do eval foreach (@array){ ( '($FOUND=1) if ($STRING=~' . $_ . ')') } # Is there a better solution Thanks Ram -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]