code: public final Filter regexFilter() throws RecognitionException {
  		Filter filter = null;
  
  
  		Token a=null;
  		Token b=null;
  
  		filter = new Filter("regex");
  		try {
  			// druidG.g:443:2: ( (a= ID WS LIKE WS b= ( SINGLE_QUOTE_STRING ) ) )
  			// druidG.g:443:4: (a= ID WS LIKE WS b= ( SINGLE_QUOTE_STRING ) )
  			{
  			// druidG.g:443:4: (a= ID WS LIKE WS b= ( SINGLE_QUOTE_STRING ) )
  			// druidG.g:443:5: a= ID WS LIKE WS b= ( SINGLE_QUOTE_STRING )
  			{
  			a=(Token)match(input,ID,FOLLOW_ID_in_regexFilter3002); 
  			match(input,WS,FOLLOW_WS_in_regexFilter3004); 
  			match(input,LIKE,FOLLOW_LIKE_in_regexFilter3006); 
  			match(input,WS,FOLLOW_WS_in_regexFilter3008); 
  			// druidG.g:443:24: ( SINGLE_QUOTE_STRING )
  			// druidG.g:443:25: SINGLE_QUOTE_STRING
  			{
  			b=(Token)match(input,SINGLE_QUOTE_STRING,FOLLOW_SINGLE_QUOTE_STRING_in_regexFilter3014); 
  			}
  
  			}
  
  			filter.dimension = (a!=null?a.getText():null);
  					 filter.pattern = unquote((b!=null?b.getText():null));
  					
  			}
  
  		}
  		catch (RecognitionException re) {
  			reportError(re);
  			recover(input,re);
  		}
  		finally {
  			// do for sure before leaving
  		}
  		return filter;
  	}
docs: druidG.g:441:1: regexFilter returns [Filter filter] : (a= ID WS LIKE WS b= ( SINGLE_QUOTE_STRING ) ) ;