Hello everyone,

I'm trying to write a rule that matches the repetition (4 or more) of the
same special character

For example:

"^^^^^^^^^^^^^^^^^^^^"

or

"________________"

I have these lexer rules :

UNDERSCORE : '_';
BACKTICK : '`';
STAR : '*';
PIPE : '|';
COLUMN : ':';
SPECIAL_CHAR :
('!'|'"'|'#'|'$'|'%'|'&'|'\''|'('|')'|'+'|','|'.'|'/'|';'|'<'|'='|'>'|'?'|'@'|'['|'\\'|']'|'^'|'{'|'}'|'~');
LINE_BREAK : '\u000C'?'\r'?'\n';

And I'd like to write a parser rule named "underline" that only matches if
this is a repetition of *the same character* and that returns this
character. So that enclosing rules can use it.

For now I wrote this:

underline returns [char symbol]
  : underlineAtom {$symbol=$underlineAtom.text} {$symbol}+ LINE_BREAK
  ;

underlineAtom
  : UNDERSCORE
  | STAR
  | PIPE
  | BACKTICK
  | COLUMN
  | SPECIAL_CHAR
  ;

But my grammar does not compile...

Can someone help me on this ? :)

Thanks

List: http://www.antlr.org/mailman/listinfo/antlr-interest
Unsubscribe: 
http://www.antlr.org/mailman/options/antlr-interest/your-email-address

-- 
You received this message because you are subscribed to the Google Groups 
"il-antlr-interest" 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/il-antlr-interest?hl=en.

Reply via email to