¿Cómo escribir un regex con espacios en blanco de coincidencias pero sin tabulaciones y una nueva línea? gracias todo

[[:blank:]]{2,} <- Aunque esto no es bueno para mí porque es un espacio en blanco o una pestaña, pero no nuevas líneas.

3
János Sági 23 nov. 2017 a las 20:16

2 respuestas

La mejor respuesta

Según mi comentario original, puedes usar esto.

Código

Ver expresiones regulares en uso aquí

Nota : el vínculo contiene caracteres de espacio en blanco: tabulador , nueva línea y espacio . Solo coincide el espacio .

[^\S\t\n\r]

Entonces su expresión regular sería [^\S\t\n\r]{2,}


Explicación

  • [^\S\t\n\r] Coincide con cualquier personaje que no esté presente en el conjunto.
    • \S Coincide con cualquier carácter que no sea un espacio en blanco. Dado que es un doble negativo, en realidad coincidirá con cualquier carácter de espacio en blanco. Agregar \t, \n y \r al conjunto negado garantiza que también excluyamos esos caracteres específicos. Básicamente, esta expresión regular dice:
      • Coincidir con cualquier carácter de espacio en blanco excepto \t\n\r

Este principio en expresiones regulares se usa a menudo con caracteres de palabra \w para negar el carácter de subrayado _: [^\W_]

6
ctwheels 23 nov. 2017 a las 17:38

[] {2,} funciona normalmente (no estoy seguro de php) o incluso / {2,} /

0
Johan 23 nov. 2017 a las 17:29