From 07cbd63f47bd89af51c7b5154d0a82c4c6d463d1 Mon Sep 17 00:00:00 2001 From: JanLJL Date: Tue, 30 Apr 2019 09:44:22 +0200 Subject: [PATCH] Closes #28 --- osaca/param.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/osaca/param.py b/osaca/param.py index aa2c436..871ef2f 100755 --- a/osaca/param.py +++ b/osaca/param.py @@ -29,14 +29,15 @@ class MemAddr(Parameter): self.base = None self.index = None self.scale = None - - m = re.match(r'(?P[x0-9a-fA-F]*)\((?P[^,\)]+)(?:,\s*(?P[^,\)]+)' - r'(?:,\s*(?P[^,\)]+))?)?\)', name) + + m = re.match(r'((?P[x0-9a-fA-F]*)|(?P\-?[0-9]*))' + r'\((?P[^,\)]+)(?:,\s*(?P[^,\)]+)(?:,\s*' + r'(?P[^,\)]+))?)?\)', name) if not m: raise ValueError('Type not supported: {!r}'.format(name)) - self.offset = m.group('offset') or None + self.offset = m.group('offset_dec') or m.group('offset_hex') or None self.base = m.group('base') or None self.index = m.group('index') or None self.scale = m.group('scale') or None