Module pyparsing :: Class Regex

type Regex

source code

   object --+        
            |        
ParserElement --+    
                |    
            Token --+
                    |
                   Regex

Token for matching strings that match a given regular expression. Defined with string specifying the regular expression in a form recognized by the inbuilt Python re module. If the given regex contains named groups (defined using (?P<name>...)), these will be preserved as named parse results.

Example:

   realnum = Regex(r"[+-]?\d+\.\d*")
   date = Regex(r'(?P<year>\d{4})-(?P<month>\d\d?)-(?P<day>\d\d?)')
   # ref: http://stackoverflow.com/questions/267399/how-do-you-match-only-valid-roman-numerals-with-a-regular-expression
   roman = Regex(r"M{0,4}(CM|CD|D?C{0,3})(XC|XL|L?X{0,3})(IX|IV|V?I{0,3})")

   make_html = Regex(r"(\w+):(.*?):").sub(r"<\1>\2</\1>")
   print(make_html.transformString("h1:main title:"))
   # prints "<h1>main title</h1>"
Nested Classes
compiledREtype
Compiled regular expression objects
Instance Methods
 
__init__(self, pattern, flags=0, asGroupList=False, asMatch=False)
The parameters pattern and flags are passed to the re.compile() function as-is.
source code
 
parseImpl(self, instring, loc, doActions=True) source code
 
__str__(self) source code
 
sub(self, repl)
Return Regex with an attached parse action to transform the parsed result as if called using re.sub(expr, repl, string).
source code

Inherited from ParserElement: __add__, __and__, __call__, __eq__, __hash__, __invert__, __mul__, __ne__, __or__, __radd__, __rand__, __repr__, __req__, __rmul__, __rne__, __ror__, __rsub__, __rxor__, __sub__, __xor__, addCondition, addParseAction, canParseNext, checkRecursion, copy, ignore, leaveWhitespace, matches, parseFile, parseString, parseWithTabs, postParse, preParse, runTests, scanString, searchString, setBreak, setDebug, setDebugActions, setFailAction, setName, setParseAction, setResultsName, setWhitespaceChars, split, streamline, suppress, transformString, tryParse, validate

Static Methods

Inherited from ParserElement: enablePackrat, inlineLiteralsUsing, resetCache, setDefaultWhitespaceChars

Class Variables
  __slotnames__ = []

Inherited from ParserElement: DEFAULT_WHITE_CHARS, packrat_cache, packrat_cache_lock, packrat_cache_stats, verbose_stacktrace

Method Details

__init__(self, pattern, flags=0, asGroupList=False, asMatch=False)
(Constructor)

source code 

The parameters pattern and flags are passed to the re.compile() function as-is. See the Python re module for an explanation of the acceptable patterns and flags.

Overrides: ParserElement.__init__

parseImpl(self, instring, loc, doActions=True)

source code 
Overrides: ParserElement.parseImpl

__str__(self)
(Informal representation operator)

source code 
Overrides: ParserElement.__str__