diff --git a/src/libnptm/Configuration.cpp b/src/libnptm/Configuration.cpp
index 3485d543bef862afd5378ee32f6d061a9ba291ea..7e61d9721df81aad0face405a195d6e2469ef65e 100644
--- a/src/libnptm/Configuration.cpp
+++ b/src/libnptm/Configuration.cpp
@@ -451,6 +451,7 @@ ScattererConfiguration* ScattererConfiguration::from_dedfb(string dedfb_file_nam
   for (int i113 = 1; i113 <= nsph; i113++) {
     if (iog_vector[i113 - 1] < i113) continue;
     str_target = file_lines[++last_read_line];
+    re = regex("[0-9]+");
     regex_search(str_target, m, re);
     nshl_vector[i113 - 1] = stoi(m.str());
     str_target = m.suffix().str();
@@ -459,7 +460,7 @@ ScattererConfiguration* ScattererConfiguration::from_dedfb(string dedfb_file_nam
     string str_number = m.str();
     str_number = regex_replace(str_number, regex("D"), "e");
     str_number = regex_replace(str_number, regex("d"), "e");
-    ros_vector[i113 - 1] = stod(m.str());
+    ros_vector[i113 - 1] = stod(str_number);
     int nsh = nshl_vector[i113 - 1];
     if (i113 == 1) nsh += ies;
     rcf_vector[i113 - 1] = new double[nsh]();