Respostas:
Eu usaria a seguinte fórmula para obter um URL.
=IF(ISEMAIL(A2),
REGEXEXTRACT(A2,"@(.+)"),
IF(ISURL(A2),
A2,
IF(ISURL(REGEXEXTRACT(A2,"@(.+)")),
REGEXEXTRACT(A2,"@(.+)"),
"No valid entry"
)
)
)
Copy / Paste
=IF(ISEMAIL(A2),REGEXEXTRACT(A2,"@(.+)"),IF(ISURL(A2),A2,IF(ISURL(REGEXEXTRACT(A2,"@(.+)")),REGEXEXTRACT(A2,"@(.+)"),"No valid entry")))
A1é validado por ser um endereço de email. Se TRUE, use a REGEXEXTRACTfórmula que você construiu. Se o endereço de email não for um endereço válido, valide para um URL. Se o URL não for válido, verifique se REGEXé um URL válido. Mostrar texto Nenhuma entrada válida é nenhuma das IFafirmações são verdadeiras.

Criei um arquivo de exemplo para você: Obter domínio do endereço de email
Esta fórmula fará o trabalho:
=regexextract(A1;"@(.*)")
Se não @for encontrado, o valor original é mostrado.
A =regexextractfunção ( documentação ) executa o parâmetro de expressão regular ( @(.*)) no valor da célula A1e retorna o grupo correspondente.
(.*)é muito genérico. Btw, se nenhuma correspondência for encontrada, ele lançará um erro.
(.*)muito genérico? Você não quer tudo depois do @?
"@([A-Za-z0-9-.]+)")
=split(A2, "@")em A3 colocariabobem A3 eexample.comem A4. Um pouco mais conciso.