> Dan Muey wrote:
> > 
> > Howdy,
> 
> Hello,
> 
> > perldoc perlre on 5.8.0 says that [:ascii:] should match any ascii 
> > character and [:^ascii:] is the negate version.
> > 
> > If I do =~m/[:^ascii:]/ or [:ascii:] on astring that is 'hi' it
> 
> That character class matches the characters 'a', 'c', 'i', 
> 's', ':' or '^' and 'hi' contains the character 'i' so it 
> returns true.
> 
> 
> > returns true each way, so I believe it says the [] are part of [::] 
> > conbstruct which I think means you have to have[[:class:]]
> 
> Yes.
> 
> 
> > Now [^[:ascii:]] and [[:ascii:]] behave as you'd expect so I think 
> > that's all correct ( Please tell me if I'm wrong)
> > 
> > SO my question is:
> > 
> > Which is faster/better/more portable/compliant etc....
> > 
> > [^[:ascii:] or [[:^ascii:]] ??
> 
> $ perl -le'use re qw/debug/; "xxx" =~ /[[:^ascii:]]/g' 
> Compiling REx `[[:^ascii:]]' size 11 first at 1
>    1: ANYOF[-\377](11)
>   10: END(0)
> stclass `ANYOF[-\377]' minlen 1 
> Matching REx `[[:^ascii:]]' against `xxx'
> Freeing REx: `[[:^ascii:]]'
> 
> $ perl -le'use re qw/debug/; "xxx" =~ /[^[:ascii:]]/g' 
> Compiling REx `[^[:ascii:]]' size 11 first at 1
>    1: ANYOF[-\377](11)
>   10: END(0)
> stclass `ANYOF[-\377]' minlen 1 
> Matching REx `[^[:ascii:]]' against `xxx'
> Freeing REx: `[^[:ascii:]]'
> 
> 
> They both look the same to me.

Cool, I'll have to look into that little trick, thanks John!

Dan

> 
> 
> John
> -- 
> use Perl;
> program
> fulfillment
> 
> -- 
> 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]

Reply via email to