You almost answered your own question.
You can either simply run the find replace on the initial field, or if your concerned which it sounds like you may be...
After creating the new field, run a replace field contents step and set the value to be that of the field you want to clean up.
You can even combine this with cleaning up the fields contents
For example :
OriginalField - contains odd characters
NewField - temp field for cleaning up OriginalField
Ensure you have the correct found set, or all records showing.
1. Click in the NewField, then choose the Records > Replace field Contents
2. Choose replace with calculated result (specify)
3. Enter something along the lines of
filter ( OriginalField ; "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz01234567890 ")
Above will strip out any character which is not listed, so if you want dashes or commas etc, add that above and place the results into the NewField for you to check / evaluate.
To do an exact copy, simply make the calculation state : OriginalField