How do I normalize and transform field text algorithmically I've got names and emails exported from one sales system that I am trying to move into my email service provider.  I have to normalize the data.

The email field has data like this:

John Smith &lt;jsmith@gmail.com&gt;


I want to algorithmically turn all email field entries into this:

jsmith@gmail.com


Do you know the best tool, script, process or excel function to do this?  It's racking my brain, because I don't want to do it manually.
Example SQL Script
For the specific example of parsing a name into it's separate elements see (SO question):
How can I parse the first, middle and last name from a full name field in SQL?

The accepted answer is a fantastic example of how to roll your own algorithm to separate out your names from emails.

Tools
There are some out there, I'll update this answer later when I can have some time to find (or please edit this answer if you have found some)

Note: No matter what method you use, do a sanity check validation of your results, most good methods will be able to accurately parse 90+% of your data, the real trick is how to identify the &lt;10% that have not been correctly parsed  (that can be as simple as doing a sanity check and scanning the results)