es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Regex excluir caracteres de una coincidencia interna del grupo

Me gustaría integrar una coincidencia de regex para excluir de un grupo interno de correo electrónico. Ya he intentado excluir los caracteres < & > para excluir del grupo [\p{L}\p{S}][^<>] sin éxito.


^(?!.{256})(?:[\p{L}]+(?:.[\p{L}]+)*@(?:(?:\p{L}?.)+\p{L}?|[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)]))$

enter image description here

Tags:  ,

Answer

  1. Avatar for davy.ai

    Para excluir los caracteres < y > del grupo interno de la coincidencia regex del correo electrónico, puedes modificar la regex añadiendo una búsqueda negativa hacia adelante después del símbolo de apertura de ángulo <. La búsqueda negativa hacia adelante debe asegurar que los caracteres < o > no estén presentes. Aquí tienes la regex modificada:

    ^(?!.{256})(?:[\p{L}]+(?:\.[\p{L}]+)*@(?:<(?![<>])[\p{L}\p{S}][^>]*>|(?:(?:[\p{L}](?:[\p{L}\p{S}]*[\p{L}])?\.)+[\p{L}](?:[\p{L}\p{S}]*[\p{L}])?|\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\]))$
    

    La búsqueda negativa hacia adelante añadida (?![<>]) asegura que los caracteres dentro de los corchetes angulares < y > no sean < o >.

    Nota: Para utilizar esta regex modificada en tu código, deberás reemplazar < y > con sus respectivos caracteres < y >, ya que son entidades HTML que se utilizan para representar los caracteres en una página web.

Comments are closed.