From 0b19bb71ba5a4afa84e673a8239935426fa0db23 Mon Sep 17 00:00:00 2001 From: ptmcg Date: Tue, 9 Aug 2016 21:50:19 +0000 Subject: Remove incorrect tag directory git-svn-id: svn://svn.code.sf.net/p/pyparsing/code/tags/pyparsing_2.1.6@405 9bf210a0-9d2d-494c-87cf-cfb32e7dff7b --- trunk/src/examples/configParse.py | 72 --------------------------------------- 1 file changed, 72 deletions(-) delete mode 100644 trunk/src/examples/configParse.py (limited to 'trunk/src/examples/configParse.py') diff --git a/trunk/src/examples/configParse.py b/trunk/src/examples/configParse.py deleted file mode 100644 index 769249c..0000000 --- a/trunk/src/examples/configParse.py +++ /dev/null @@ -1,72 +0,0 @@ -# -# configparse.py -# -# an example of using the parsing module to be able to process a .INI configuration file -# -# Copyright (c) 2003, Paul McGuire -# - -from pyparsing import \ - Literal, Word, ZeroOrMore, Group, Dict, Optional, \ - printables, ParseException, restOfLine, empty -import pprint - - -inibnf = None -def inifile_BNF(): - global inibnf - - if not inibnf: - - # punctuation - lbrack = Literal("[").suppress() - rbrack = Literal("]").suppress() - equals = Literal("=").suppress() - semi = Literal(";") - - comment = semi + Optional( restOfLine ) - - nonrbrack = "".join( [ c for c in printables if c != "]" ] ) + " \t" - nonequals = "".join( [ c for c in printables if c != "=" ] ) + " \t" - - sectionDef = lbrack + Word( nonrbrack ) + rbrack - keyDef = ~lbrack + Word( nonequals ) + equals + empty + restOfLine - # strip any leading or trailing blanks from key - def stripKey(tokens): - tokens[0] = tokens[0].strip() - keyDef.setParseAction(stripKey) - - # using Dict will allow retrieval of named data fields as attributes of the parsed results - inibnf = Dict( ZeroOrMore( Group( sectionDef + Dict( ZeroOrMore( Group( keyDef ) ) ) ) ) ) - - inibnf.ignore( comment ) - - return inibnf - - -pp = pprint.PrettyPrinter(2) - -def test( strng ): - print(strng) - try: - iniFile = open(strng) - iniData = "".join( iniFile.readlines() ) - bnf = inifile_BNF() - tokens = bnf.parseString( iniData ) - pp.pprint( tokens.asList() ) - - except ParseException as err: - print(err.line) - print(" "*(err.column-1) + "^") - print(err) - - iniFile.close() - print() - return tokens - -if __name__ == "__main__": - ini = test("setup.ini") - print("ini['Startup']['modemid'] =", ini['Startup']['modemid']) - print("ini.Startup =", ini.Startup) - print("ini.Startup.modemid =", ini.Startup.modemid) - -- cgit v1.2.1