| Imported modules |  | 
        
        | import Expression import convert_re
 import string
 from xml.sax import xmlreader
 
 | 
        
            | Functions |  | 
        
        |  | 
            |  | Alt | 
        
        | 
Alt ( *args )
 exp1, exp2, ... -> match exp1 or (if that fails) match exp2 or ... | 
            |  | Any | 
        
        | 
Any ( s )
 (s) -> match any character in s | 
            |  | AnyBut | 
        
        | 
AnyBut ( s )
 s -> match any character not in s | 
            |  | Assert | 
        
        | 
Assert ( expression )
 | 
            |  | AssertNot | 
        
        | 
AssertNot ( expression )
 | 
            |  | Bol | 
        
        | 
Bol ()
 | 
            |  | Case | 
        
        | 
Case ( expr )
 | 
            |  | DelimitedFields | 
        
        | 
DelimitedFields (
        name=None,
        sep=None,
        attrs=None,
        )
match 0 or more fields seperated by the given seperator(s)    This is useful for parsing space, tab, color, or other character
    delimited fields.  There is no default seperator.     If nameis not None, the delimited text, excluding the seperator,
    will be put inside groups of the given name.  You can optionally
    include group attributes.  The seperator character is consumed,
    but not accessible using a group.     Neither "\r" nor "\n" may be used as a seperator.
    The line as a whole is not included in a group. 
        
            | Exceptions |  |  
        | TypeError( "Must specify a sep (via the 'sep' parameter)" ) 
 |  | 
            |  | Digits | 
        
        | 
Digits ( name=None,  attrs=None )
 match one or more decimal digits    This is the same as (?P<name?attrs>\d+).     If nameis not None, the matching text will be put inside a
    group of the given name.  You can optionally include group
    attributes. | 
            |  | Empty | 
        
        | 
Empty ()
 | 
            |  | Eof | 
        
        | 
Eof ()
 | 
            |  | Eol | 
        
        | 
Eol ()
 | 
            |  | Float | 
        
        | 
Float ( name=None,  attrs=None )
 match floating point numbers like 6, 6., -.1, 2.3, +4E-5, ...    If nameis not None, the matching text will be put inside of a
    group of the given name.  You can optionally include group
    attributes. | 
            |  | Group | 
        
        | 
Group (
        name,
        expr,
        attrs=None,
        )
name, expr -> use nameto describe a successful match of the expression | 
            |  | Integer | 
        
        | 
Integer ( name=None,  attrs=None )
 match an integer (digits w/ optional leading + or - sign)    If nameis not None, the matching text will be put inside a
    group of the given name.  You can optionally include group
    attributes. | 
            |  | MaxRepeat | 
        
        | 
MaxRepeat (
        expr,
        min_count,
        max_count=Expression.MAXREPEAT,
        )
expr, min_count, max_count = 65535 -> match between min- and max_count times    If max_count == 65535 (which is Expression.MAXREPEAT) then there
    is no upper limit. | 
            |  | Opt | 
        
        | 
Opt ( expr )
 expr -> match expr1 or 0 times | 
            |  | Punctuation | 
        
        | 
Punctuation ( name=None,  attrs=None )
 match a punctuation character (characters in string.punctuation)    If nameis not None, the matching text will be put inside of a
    group of the given name.  You can optionally include group
    attributes. | 
            |  | Re | 
        
        | 
Re ( pattern,  fix_newlines=0 )
 pattern -> the expression tree for the regexp pattern string | 
            |  | Rep | 
        
        | 
Rep ( expr )
 expr -> match expras many times as possible, even 0 time | 
            |  | Rep1 | 
        
        | 
Rep1 ( expr )
 expr -> match expras many times as possible, but at least once | 
            |  | RepN | 
        
        | 
RepN ( expr,  count )
 expr, count -> match the expression countnumber of time    This option is handy for named group repeats since you don't have
    to use the name twice; for the min_count and max_count fields. | 
            |  | Seq | 
        
        | 
Seq ( *args )
 exp1, exp2, ... -> match exp1 followed by exp2 followed by ... | 
            |  | SimpleRecordFilter | 
        
        | 
SimpleRecordFilter (
        expr,
        make_reader,
        reader_args=(),
        )
 | 
            |  | SkipLinesTo | 
        
        | 
SkipLinesTo ( expr )
 read and ignore lines up to and including, the line matching expr | 
            |  | SkipLinesUntil | 
        
        | 
SkipLinesUntil ( expr )
 read and ignore lines up to, but excluding, the line matching expr | 
            |  | Spaces | 
        
        | 
Spaces ( name=None,  attrs=None )
 match one or more whitespace (except newline)    "Spaces" is defined as [\t\v\f\r ]+, which is not the same
    as \s+.  (It's missing the\n, which is useful since you
    almost never mean for whitespace to go beyond the newline.)     If nameis not None, the matching text will be put inside of a
    group of the given name.  You can optionally include group
    attributes. | 
            |  | Str | 
        
        | 
Str ( *args )
 (s1, s2, ...) -> match s1 or s2 or ... | 
            |  | Str1 | 
        
        | 
Str1 ( s )
 (s) -> match the literal string | 
            |  | ToEol | 
        
        | 
ToEol ( name=None,  attrs=None )
 match everything up to and including the end of line    If nameis not None, the matching text, except for the newline,
    will be put inside a group of the given name.  You can optionally
    include group attributes. | 
            |  | ToSep | 
        
        | 
ToSep (
        name=None,
        sep=None,
        attrs=None,
        )
match all characters up to the given seperator(s)    This is useful for parsing space, tab, color, or other character
    delimited fields.  There is no default seperator character.     If nameis not None, the matching text, except for the seperator
    will be put inside a group of the given name.  You can optionally
    include group attributes.  The seperator character will also be
    consumed.     Neither "\r" nor "\n" may be used as a seperator 
        
            | Exceptions |  |  
        | TypeError( "Must specify a seperator (the 'sep' parameter)" ) 
 |  | 
            |  | Unprintable | 
        
        | 
Unprintable ( name=None,  attrs=None )
 match an unprintable character (characters not in string.printable)    If nameis not None, the matching text will be put inside of a
    group of the given name.  You can optionally include group
    attributes. | 
            |  | UntilEol | 
        
        | 
UntilEol ( name=None,  attrs=None )
 match everything up to but not including the end of line    If nameis not None, the matching text, except for the newline,
    will be put inside a group of the given name.  You can optionally
    include group attributes. | 
            |  | UntilSep | 
        
        | 
UntilSep (
        name=None,
        sep=None,
        attrs=None,
        )
match all characters up to the given seperators(s)    This is useful for parsing space, tab, color, or other character
    delimited fields.  There is no default seperator.     If nameis not None, the matching text, except for the seperator
    will be put inside a group of the given name.  You can optionally
    include group attributes.  The seperator character will not be
    consumed.     Neither "\r" nor "\n" may be used as a seperator. 
        
            | Exceptions |  |  
        | TypeError( "Must specify a seperator (the 'sep' parameter)" ) 
 |  | 
            |  | Word | 
        
        | 
Word ( name=None,  attrs=None )
 match a word    A wordis defined as\w+, and \w is [a-zA-Z0-9_].     If nameis not None, the matching text will be put inside of a
    group of the given name.  You can optionally include group
    attributes.     In other words, this is the short way to write (?P<name>\w+). | 
            |  | _fix_newlines | 
        
        | 
_fix_newlines ( s )
 | 
            |  | _group | 
        
        | 
_group (
        name,
        exp,
        attrs,
        )
helper function | 
            |  | replace_groups | 
        
        | 
replace_groups ( expr,  replacements )
 | 
            |  | select_names | 
        
        | 
select_names ( expression,  names )
 Use this to prune out group names you aren't
 interested in seeing, which reduces the number of method
 calls back to the parser. |