Module pyparsing :: Class CloseMatch
[frames] | no frames]

Class CloseMatch

source code

   object --+        
            |        
ParserElement --+    
                |    
            Token --+
                    |
                   CloseMatch

A variation on Literal which matches "close" matches, that is, strings with at most 'n' mismatching characters. CloseMatch takes parameters:

The results from a successful parse will contain the matched text from the input string and the following named results:

If mismatches is an empty list, then the match was an exact match.

Example:

   patt = CloseMatch("ATCATCGAATGGA")
   patt.parseString("ATCATCGAAXGGA") # -> (['ATCATCGAAXGGA'], {'mismatches': [[9]], 'original': ['ATCATCGAATGGA']})
   patt.parseString("ATCAXCGAAXGGA") # -> Exception: Expected 'ATCATCGAATGGA' (with up to 1 mismatches) (at char 0), (line:1, col:1)

   # exact match
   patt.parseString("ATCATCGAATGGA") # -> (['ATCATCGAATGGA'], {'mismatches': [[]], 'original': ['ATCATCGAATGGA']})

   # close match allowing up to 2 mismatches
   patt = CloseMatch("ATCATCGAATGGA", maxMismatches=2)
   patt.parseString("ATCAXCGAAXGGA") # -> (['ATCAXCGAAXGGA'], {'mismatches': [[4, 9]], 'original': ['ATCATCGAATGGA']})
Instance Methods
 
__init__(self, match_string, maxMismatches=1)
x.__init__(...) initializes x; see help(type(x)) for signature
source code
 
parseImpl(self, instring, loc, doActions=True) source code

Inherited from ParserElement: __add__, __and__, __call__, __eq__, __hash__, __invert__, __mul__, __ne__, __or__, __radd__, __rand__, __repr__, __req__, __rmul__, __rne__, __ror__, __rsub__, __rxor__, __str__, __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

Inherited from object: __delattr__, __format__, __getattribute__, __new__, __reduce__, __reduce_ex__, __setattr__, __sizeof__, __subclasshook__

Static Methods

Inherited from ParserElement: enablePackrat, inlineLiteralsUsing, resetCache, setDefaultWhitespaceChars

Class Variables

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

Properties

Inherited from object: __class__

Method Details

__init__(self, match_string, maxMismatches=1)
(Constructor)

source code 

x.__init__(...) initializes x; see help(type(x)) for signature

Overrides: object.__init__
(inherited documentation)

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

source code 
Overrides: ParserElement.parseImpl