summaryrefslogtreecommitdiff
path: root/src/examples/nested.py
diff options
context:
space:
mode:
authorPaul McGuire <ptmcg@austin.rr.com>2012-10-02 04:55:56 +0000
committerPaul McGuire <ptmcg@austin.rr.com>2012-10-02 04:55:56 +0000
commita7f9dda0668bfce4fba51df1bf2976b4a93a8bd5 (patch)
tree57ea8bcf2e66532a36c833a7bc57cff9d5d0e4dd /src/examples/nested.py
parentf5d2b716ffb57b65660a7ee0bbf04332dfb29620 (diff)
downloadpyparsing-git-a7f9dda0668bfce4fba51df1bf2976b4a93a8bd5.tar.gz
Add example files to SVN
Diffstat (limited to 'src/examples/nested.py')
-rw-r--r--src/examples/nested.py30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/examples/nested.py b/src/examples/nested.py
new file mode 100644
index 0000000..bd529f5
--- /dev/null
+++ b/src/examples/nested.py
@@ -0,0 +1,30 @@
+#
+# nested.py
+# Copyright, 2007 - Paul McGuire
+#
+# Simple example of using nestedExpr to define expressions using
+# paired delimiters for grouping lists and sublists
+#
+
+from pyparsing import *
+import pprint
+
+data = """
+{
+ { item1 "item with } in it" }
+ {
+ {item2a item2b }
+ {item3}
+ }
+
+}
+"""
+
+# use {}'s for nested lists
+nestedItems = nestedExpr("{", "}")
+print( (nestedItems+stringEnd).parseString(data).asList() )
+
+# use default delimiters of ()'s
+mathExpr = nestedExpr()
+print( mathExpr.parseString( "((( ax + by)*C) *(Z | (E^F) & D))") )
+