From 270f7f8efbf9ca3689a6e6b7d492b470802ec4b5 Mon Sep 17 00:00:00 2001
From: Matthew Webster <mwebster@jalapeno.cluster.fmrib.ox.ac.uk>
Date: Thu, 22 Jul 2021 16:09:59 +0100
Subject: [PATCH] MNT: Use python re rather than sed

---
 fsl_course/feat3/feedsRun3.py | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/fsl_course/feat3/feedsRun3.py b/fsl_course/feat3/feedsRun3.py
index 019d6d9..d27b71a 100755
--- a/fsl_course/feat3/feedsRun3.py
+++ b/fsl_course/feat3/feedsRun3.py
@@ -10,6 +10,7 @@ import glob
 import nibabel as nb
 import numpy as np
 import hashlib
+import re
 import shutil
 
 def run(cmd):
@@ -34,12 +35,13 @@ newFeatDir = op.join(outDir, op.basename(origFeatDir))
 
 cmd = "./cleanFSF.py {0} {1} {2} {3} {4} {5}".format(
     origFSF, newFSF, origDataDir, dataDir, outDir, origFSLDir)
-
-run(cmd)
-cmd = """sed -ie 's|set feat_files(1).*|set feat_files(1) "{0}"|g' {1}""".format(newFeatDir,newFSF)
-print(cmd)
 run(cmd)
 
+#The output FEAT directory will be the copied input, so update fsf
+text = open(newFSF, 'rt').read()
+text = re.sub('set feat_files\(1\).*',  f'set feat_files(1) "{newFeatDir}"', text)
+open(newFSF, 'wt').write(text)
+
 # run FEAT
 shutil.copytree(origFeatDir,newFeatDir)
 run("chmod -R a+w {0}".format(newFeatDir))
-- 
GitLab