Many Columns String Replacer


I have a task where I need to search and replace 3 distinct words (so cannot use wildcards) across 30 string columns. Now, as far as I can see I will need to make 90 String Replacer nodes to undertake this task, there must surely be a simpler way which I am not aware of. I've tried to think of a way to do it with variables and loops but could not think of one. Its not the first time I've wanted to do this task.

It would be useful to be able to select multiple columns in the "string replacer" node rather than being restricted to one column.

Or another useful feature would be to have a looping facility which rather than collates the results at the "Loop End" in terms of row collation or column collation, or just takes the results from the last iteration at the "Loop End", there is a 3rd option which takes the results table after each iteration at the "Loop End" node and sends that table back to the "Loop Start" and so on, until all iterations are completed. This would have been useful in this task by using column names as a variable which could be fed into the string replacer node.

Hi Richards,

Did you find an alternative solution to making multiple String Replacer nodes?  I need to iterate over every column except the 1st, and the limitations of the String Replacer are crippling.



I am no Java expert, but is there a way of using the "Create Collection Column" node (this would create just one column) and then using a Java snippet node to replace the values in the collection, then of course split the collection at the end.

Not sure if this advice helps.




Try this workflow, you will need to add one more string replacer.

Great thanks Macca.  After some modifications this worked perfectly.

Hi guys I came out with this solution using a dictionary table.

Hope it helps

Best Regards


I don't know how your data is structured but would it be possible to unpivot the columns? in this way you transform them in just ColumnNames and ColumnValues; you can then replace the words with 3 string manipulators and finally re-pivot your table to the original form.

it could be useful if you had a test case that you could share.