ugrás a tartalomhoz

Regexp és UTF-8

Anonymous · 2004. Okt. 5. (K), 15.17
Hello!

Az a gondom, hogy UTF-8-ban kódolt szöveget szeretnék regexpekkel kezelni, csak nem tudom, hogy hogyan. Az UTF-8 átkódolása latin2-re jelenleg nem járható út, natívan kellene megoldani. Próbáltam azt is, hogy a regexp kifejezést kódolom utf-8-ra, de az sem hozta meg a sikert.

Egyéb ötlet?

Hubidubi
 
1

PHP vs. UTF-8

Bártházi András · 2004. Okt. 5. (K), 15.48
Ez egy elég gyenge pontja a PHP-nak. De ettől még meg lehet oldani, a regexpek sokmindenre képesek... :)

Pl:

/[a-záéíóú]/
helyett

/([a-z]|á|é|í|ó|ú)/
A második esetben az ékezetes karaktereket UTF-8-ban, azaz két bájton kell odaírni, nem akartam érhetetlenebbé tenni még a hexa kódok odaírásával (ráadásul fejből nem is tudom).

-boogie-
2

PCRE UTF-8

Hojtsy Gábor · 2004. Okt. 8. (P), 14.24
A PHP PCRE mintaillesztő kifejezéseiben van UTF8 támogatás az u módosítóval (ami nem Perl kompatibilis :):

u (PCRE_UTF8)

This modifier turns on additional functionality of PCRE that is incompatible with Perl. Pattern strings are treated as UTF-8. This modifier is available from PHP 4.1.0 or greater on Unix and from PHP 4.2.3 on win32.