This will split it and remove whitespace: String initialString = 'Malcolm Bell Landgraab | EMP-00012 | Consultant'; String[] results = New String[]{}; for(String val : initialString.split('\\|')) results.add(val.trim()); system.debug(results); I am pretty sure this will also remove the whitespace before and after the separator without having to use trim or the loop String initialString = 'Malcolm Bell Landgraab | EMP-00012 | Consultant'; String[] results = initialString.split('\\s*\\|\\s*'); system.debug(results);