On Wednesday 10 of March 2010 at 00:59:15, inhahe wrote:
> thanks, guys,
> i do need it per token
> i think i'll do the same thing Hofkamp suggested and just convert the regex
> to case-insensitive
> i also want to be able to do DOTALL on a per-token basis. i suppose i can
> just do that by changing all . 's to [.\n] 's?

I'm not sure what '\n' matches in non-multiline/multiline regexes, but you 
might need '\r' as well. Moreover, '.' (any character) isn't the same as '[.]' 
(dot). Just experiment and you will get it right ;-)

Cheers,
Oldřich.

> 
> 2010/3/9 Oldřich Jedlička <[email protected]>
> 
> > Hi,
> > 
> > On Tuesday 09 of March 2010 at 06:38:58, inhahe wrote:
> > > Is there any way to make case-insensitive tokens?    I mean, other than
> > > specifying it as [Bb][Ll][Aa][Hh] etc..
> > 
> > If you want _all_ tokens to be case-insensitive, there are actually two
> > ways
> > of doing it (I didn't use ply for a long time, so this might be
> > inaccurate,
> > 
> > but my information relates to regular expressions anyway):
> >  1. Look at documentation sections 4.19 (custom reflags for lexer) and
> >  6.12
> >  
> >     (specify own lexer). In this way you can pass re.IGNORECASE to lexer
> > 
> > and
> > 
> >     this lexer to parser.
> >  
> >  2. Specify (?i) anywhere in your tokens. If I remember correctly, ply
> > 
> > makes
> > 
> >     one big master regular expression (see section 4.3) to recognize
> > 
> > tokens.
> > 
> >     The "(?i)" anywhere in the regular expression makes the full
> >     expression as case-insensitive - it is like specifying re.IGNORECASE
> >     in reflags
> > 
> > (see
> > 
> >     Python documentation, "re" module, section 8.2.1 Regular Expression
> >     Syntax).
> > > 
> > > I'm gathering that lexers combine all regexes into one single regex, so
> > > there's no way to do case-insensitivity?
> > > 
> > > If it's not possible with ply, does anyone know if it can be done with
> > > pyparsing or ANTLR?
> > > 
> > > Thanks
> > 
> > Cheers,
> > Oldřich.

-- 
You received this message because you are subscribed to the Google Groups 
"ply-hack" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/ply-hack?hl=en.

Reply via email to