Join us at FabCon Atlanta from March 16 - 20, 2026, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.
Register now!The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now! Learn more
Hello.
A field (emailBody) contains the body/text of certain emails we have received.
In Power Query, I need to remove/obscure email addresses for data protection reasons.
One entry can contain multiple email addresses.
I've found this solution here:
= Text.Combine(List.Select(Text.Split([Name], " "), each not(Text.Contains(_, "PL"))), " ")
...but I understand this would only work for one email address for each entry.
How can I remove any string that is like '*@*' ?
Solved! Go to Solution.
@cannellonigreyh You can use this:
AddedCustom =
Table.AddColumn (
PreviousStep,
"New Text",
each
Text.Combine (
List.Select (
Text.Split ( [Text], " " ),
each not Text.Contains ( _, "@" )
),
" "
),
type text
)Input:
Row 1: Hi my name is Tom and my email address is Tom@Tomtom.com I would like to discuss the price of brake fluid.
Row 2: My brother's email address is Steve@toast.com and mine is SueBlue@pretenddomain.com and I am very happy because biscuits exist.
Output:
Row 1: Hi my name is Tom and my email address is I would like to discuss the price of brake fluid.
Row 2: My brother's email address is and mine is and I am very happy because biscuits exist.
@cannellonigreyh You can use this:
AddedCustom =
Table.AddColumn (
PreviousStep,
"New Text",
each
Text.Combine (
List.Select (
Text.Split ( [Text], " " ),
each not Text.Contains ( _, "@" )
),
" "
),
type text
)The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now!