diff --git a/coordinator/ProcessorSurveyUtils.py b/coordinator/ProcessorSurveyUtils.py
index 23462b774dd3167fb193db936f088edf30af8263..100b43222fcd30b1a219646f5e25b90531f2e1ed 100644
--- a/coordinator/ProcessorSurveyUtils.py
+++ b/coordinator/ProcessorSurveyUtils.py
@@ -19,7 +19,7 @@ def parse_location_str(location_str):
 
     # expecting a space-separated string containing four numbers which
     # contain a decimal point
-    regex = r'(?P<lat>[-?0-9\.]+)\s(?P<lon>[-?0-9\.]+)\s(?P<alt>[0-9\.]+)\s(?P<acc>[0-9\.]+)'
+    regex = r'(?P<lat>-?[0-9\.]+)\s(?P<lon>-?[0-9\.]+)\s(?P<alt>-?[0-9\.]+)\s(?P<acc>[0-9\.]+)'
 
     # needed because the ODK names are too complicated for regex named groups
     name_dict = {