Keep #N/A
=REGEXEXTRACT(A2,"[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}")Leaves a visible error when no email exists.
Pull the first email address out of a sentence, note or imported text block.
Pull the first email address out of a sentence, note or imported text block. Use =IFERROR(REGEXEXTRACT(A2,"[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}"),""), then replace the sample ranges with the columns in your sheet.
REGEXEXTRACT returns the first part of the text that matches the email pattern.
| A | |
|---|---|
| 1 | Text |
| 2 | |
| 3 | |
| 4 |
=REGEXEXTRACT(A2,"[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}")Leaves a visible error when no email exists.
=LOWER(IFERROR(REGEXEXTRACT(A2,"[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}"),""))Normalizes the extracted address.
=ARRAYFORMULA(IFERROR(REGEXEXTRACT(A2:A,"[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}"),""))Fills every row.
Wrap REGEXEXTRACT in IFERROR when blank output is preferred.
REGEXEXTRACT returns the first match; split the text first when every address is needed.
Wrap REGEXEXTRACT in IFERROR when blank output is preferred.
REGEXEXTRACT returns the first match; split the text first when every address is needed.
Send this recipe to the SheetSteps assistant and describe how your columns are arranged.