Surely this should not use the gsub bang method. User is set to "nil" if no substitutions where made