diff --git a/plio/io/io_bae.py b/plio/io/io_bae.py
index 16b2a68186a00ea1b387833f356f7bd546d707db..c8b8e2e45bd5861b7db6f456c23242d4208cb2cd 100644
--- a/plio/io/io_bae.py
+++ b/plio/io/io_bae.py
@@ -22,7 +22,7 @@ def socetset_keywords_to_json(keywords, ell=None):
        The serialized JSON string.
     """
     matcher = re.compile(r'\b(?!\d)\w+\b')
-    numeric_matcher = re.compile(r'\W-?(?:0|[1-9]\d*)(?:\.\d*)?(?:[eE][+\-]?\d+)?')
+    numeric_matcher = re.compile(r'\W?-?(?:0|[1-9]\d*)(?:\.\d*)?(?:[eE][+\-]?\d+)?')
     stream = {}
 
     def parse(fi):