[ale] OT: Lex pattern expression struggles
Charles Shapiro
charles.shapiro at nubridges.com
Tue Oct 26 15:43:24 EDT 2004
Um, I thought (f)lex used regex.
So it'd be something like
[:alnum:]{1,8} * (PARAM)|(TABLE)|(UPDATE) { return TOKEN_BLAH; }
Or you could just use make your token returner into a subroutine and
call it from three separate flex triggers, as:
FIRSTPART [:alnum:]{1,8} *
{FIRSTPART}PARAM { return_mytok() }
{FIRSTPART}TABLE { return_mytok() }
{FIRSTPART}UPDATE { return_mytok() }
%%
int return_mytok()
{
return TOKEN_BLAH;
}
Flex and bison are Way Cool. I did a project in 'em oncet just to play
with them. See http://tomshiro.org/coldread/
--CHS
On Tue, 2004-10-26 at 14:53, Jeff Layton wrote:
> Howdy!
>
> I'm struggling with a pattern expression for lex. I'm looking
> for an expression that handle an alphanumeric string of 1 to
> 8 characters (only letters and numbers) followed by at least
> one space and one of three keywords: "PARAM" "TABLE"
> or "UPDATE". I've tried several things with no success (I
> won't post them due to embarassment). Anyone have any
> suggestions?
>
> Thanks!
>
> Jeff
More information about the Ale
mailing list