Marc D Anderson explains this on his blog:
Displaying Managed Metadata Column Values in an Email Sent from a SharePoint Designer Workflow
Extract from blog:
Managed Metadata columns are so cool and so nasty at the same time. If
you want to display the value of a Managed Metadata column in a
SharePoint Designer workflow, you get a horrible representation of it
like ‘TermText|ba7e2a4f-6602-47a8-aa81-bca54756a356′.
The only
solution I know for this is the one in the comment from Kristina P on
Michal Pisarek’s (@MichalPisarek) blog post Managed Metadata Column
Limitations (a post which I find myself referring to far too
regularly).
Here’s the meat of it:
Start with your managed metadata column (Column1Name)
Create a 2nd column (Column2Name) in the list of type string
Create a workflow that fires on create and/or on modify (depending on your needs) that copies the value from Column1Name into Column2Name.
Create a 3rd calculated column (Column3Name) on the list. The formula for that column should be =LEFT([Column2Name],FIND(“|”,[Column2Name])-1) The calculation finds the pipe character and trims the value to a clean text value.
Any emails where you need to display the value of Column1Name should use the value of Column3Name instead to send the plain text