¿Cuál es la lista completa de caracteres que coinciden con la secuencia de escape \ s en PHP? Algunos sabores regex incluyen espacio vertical y otros caracteres en esta secuencia de escape.¿Cuáles son los espacios en blanco encontrados por s en PHP?
Respuesta
De pcrepattern specifications página:
Carácter genérico tipos
\s any white space character
Para la compatibilidad con Perl, \ s no solía coincidir con el carácter VT (código 11), lo que la diferenciaba de la clase POSIX "espacio". Sin embargo, Perl agregó VT en la versión 5.18, y PCRE hizo lo mismo en versión 8.34. Los caracteres por defecto son ahora HT (9), LF (10), VT (11), FF (12), CR (13) y espacio (32), que se definen como blanco espacio en la "C "locale" Esta lista puede variar si se lleva a cabo el emparejamiento específico del lugar. Por ejemplo, en algunas configuraciones regionales, el carácter "espacio sin interrupción" (\ xA0) se reconoce como espacio en blanco, y en otros el carácter VT no.
Así \s
coincidirá con 5 personajes y mucho más en función de:
- versión de la biblioteca PCRE
- establecer
This test compara el resultado de preg_match a través de varias versiones de PHP configuración regional.
PHP tiene \h
sólo caracteres de espacio en blanco horizontales: http://www.php.net/manual/en/regexp.reference.escape.php
Según http://www.pcre.org/pcre.txt:
Para compatibilidad con Perl, \ s no coincide con el carácter VT (código 11). Esto lo hace diferente de la clase POSIX "espacio". Los caracteres \ son HT (9), LF (10), FF (12), CR (13) y espacio (32). Si "usa la configuración regional;" está incluido en un script de Perl, \ s puede coincidir con el carácter de VT ter. En PCRE, nunca lo hace.
Por lo tanto, si "Espacio vertical" hace referencia a la pestaña vertical, la respuesta es no.
The sequences \h, \H, \v, and \V are features that were added to Perl at release 5.10. In contrast to the other sequences, which match only ASCII characters by default, these always match certain high-valued codepoints in UTF-8 mode, whether or not PCRE_UCP is set. The horizontal space characters are: U+0009 Horizontal tab U+0020 Space U+00A0 Non-break space U+1680 Ogham space mark U+180E Mongolian vowel separator U+2000 En quad U+2001 Em quad U+2002 En space U+2003 Em space U+2004 Three-per-em space U+2005 Four-per-em space U+2006 Six-per-em space U+2007 Figure space U+2008 Punctuation space U+2009 Thin space U+200A Hair space U+202F Narrow no-break space U+205F Medium mathematical space U+3000 Ideographic space The vertical space characters are: U+000A Linefeed U+000B Vertical tab U+000C Formfeed U+000D Carriage return U+0085 Next line U+2028 Line separator U+2029 Paragraph separator
De http://www.pcre.org/pcre.txt:
\ s cualquier carácter que \ P {Z} coincide, además HT, LF, FF, CR
Si bien se cita correctamente, esto depende de una configuración de tiempo de compilación. Y PHP usa un '#ifdef PCRE_UCP' alrededor de ese código. No se debe confiar en eso. – mario
- 1. ¿Cuáles son todos los caracteres japoneses de espacios en blanco?
- 2. PHP: espacios en blanco que sí importan
- 3. división por espacios en blanco o múltiples espacios en blanco
- 4. PHP - detectar espacios en blanco entre cadenas
- 5. Strip php variable, reemplace los espacios en blanco con guiones
- 6. Recortar espacios en blanco unicode en PHP 5.2
- 7. Eliminar los espacios en blanco en AS3
- 8. Espacios en blanco en Java
- 9. Ruby reducir todos los espacios en blanco a espacios individuales
- 10. ¿Los caracteres de espacio en blanco son insignificantes en JSON?
- 11. comportamiento de los espacios en blanco de expresiones regulares grep
- 12. sustituir los espacios en php _
- 13. Espacios en blanco en CLASSPATH
- 14. colapso de los espacios en blanco en una cadena
- 15. ¿Cuáles son los nuevos marcos?
- 16. ¿Cuáles son los argumentos EN FAVOR de las etiquetas de cierre de PHP para los archivos solo de PHP?
- 17. Scala tira espacios en blanco
- 18. ¿Qué son los archivos .S?
- 19. JSF recortar espacios en blanco
- 20. Separar una cadena por espacios en blanco en C++
- 21. División de una cadena en todos los espacios en blanco
- 22. Extracción de todos los espacios en blanco a excepción de ""
- 23. Cómo eliminar los espacios en blanco entre etiquetas en XML
- 24. ¿Puede fscanf() leer espacios en blanco?
- 25. MySQL reemplazar todos los espacios en blanco con -
- 26. untabify y eliminar los espacios en blanco finales en emacs
- 27. ¿Cuáles son los alias en ldap
- 28. Eliminar espacios en blanco en cadena XML
- 29. ¿Añadir espacios en blanco a stringbuilder?
- 30. Espacios en blanco e indentación en F #
También he llegado aquí buscando la lista. Pero la página ha cambiado posiblemente. Esta es la lista: Whitespace emparejado por \ T significa que sólo estos 5 personajes: 9 = 0x09 = pestaña horizontal, 10 = 0x0A = avance de línea, 12 = 0x0C = forma de alimentación, 13 = 0x0D = retorno de carro, 32 = 0x20 = espacio, http://www.php.net/manual/en/regexp.reference.escape.php –