I am currently using @bdbd suggestion. But some of the reasons is I did not give me whole problem just a slice of it. So that solution is more flexible in the ways I need it to be. But some really cool suggestions in this thread I feel like I am just learning more and more.
The TrimAll() shows potential though. I will have to look more into that to see if it would work. Seems very simple and would have the flexibility I need as well.
I suggest you trim all your inputs. You otherwise do not control the number of spaces to substitute, therefore can end up with more spaces than the substitution can handle. You also avoid the need to trim your end result.
I'm a bit lazy and can't be doing with all those square brackets, so here's an alternative approach: use a combination of List, Substitute and if necessary LeftWords or TrimAll. For example:
List will return only items with values with no last return. If you don't have an auto-enter to get rid of spaces in the fields, you can use LeftWords ( field ; 5 ) or TrimAll for each of the list items.
But hey, each to their own. All are as valid as each other if they work.