Ken Foskey wrote:
> On Fri, 2006-12-29 at 23:36 -0500, Mathew Snyder wrote:
>> I'm trying to set up an if clause to exit if an answer given is anything but
>> either any case combination of 'y' or 'yes'.  This is what I have:
>>
>> exit if $ans =~ m/[^y|^yes]/i;
>>
> 
> exit if $ans =~ m/^(y|yes)[ \t\r\n]*$/i;
> 
> The brackets are a group,  square brackets are a character class.  It is
> probably a good idea to ignore whitespace around the error as well.
> 
> 

Let me clarify though.

I have a script that will grab a bunch of emails which need to be deleted from a
database and displays them.  I then want it to ask if the user wishes to delete
them.  I want 'No' to be the default so that anything other than any case
combination of 'y' or 'yes' will cause the script to exit.  This includes simply
hitting 'enter' or entering anything that ISN'T 'y' or 'yes', case
notwithstanding.  So having the regex look also for whitespace characters will
defeat this goal.

So how do I negate this if classes aren't the proper way to go?

Mathew

-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
http://learn.perl.org/


Reply via email to