Module pyparsing :: Class OneOrMore
[hide private]
[frames] | no frames]

Class OneOrMore

source code

     object --+            
  ParserElement --+        
ParseElementEnhance --+    
         _MultipleMatch --+

Repetition of one or more of the given expression.



   data_word = Word(alphas)
   label = data_word + FollowedBy(':')
   attr_expr = Group(label + Suppress(':') + OneOrMore(data_word).setParseAction(' '.join))

   text = "shape: SQUARE posn: upper left color: BLACK"
   OneOrMore(attr_expr).parseString(text).pprint()  # Fail! read 'color' as data instead of next label -> [['shape', 'SQUARE color']]

   # use stopOn attribute for OneOrMore to avoid reading label string as part of the data
   attr_expr = Group(label + Suppress(':') + OneOrMore(data_word, stopOn=label).setParseAction(' '.join))
   OneOrMore(attr_expr).parseString(text).pprint() # Better -> [['shape', 'SQUARE'], ['posn', 'upper left'], ['color', 'BLACK']]

   # could also be written as
   (attr_expr * (1,)).parseString(text).pprint()
Nested Classes [hide private]
Instance Methods [hide private]
source code

Inherited from _MultipleMatch: __init__, parseImpl, stopOn

Inherited from _MultipleMatch (private): _setResultsName

Inherited from ParseElementEnhance: checkRecursion, ignore, leaveWhitespace, streamline, validate

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

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

Static Methods [hide private]

Inherited from ParserElement: enablePackrat, inlineLiteralsUsing, resetCache, setDefaultWhitespaceChars

Class Variables [hide private]
  __slotnames__ = []

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

Inherited from ParserElement (private): _packratEnabled

Properties [hide private]

Inherited from object: __class__

Method Details [hide private]

(Informal representation operator)

source code 


Overrides: object.__str__
(inherited documentation)