WN

WN (https://www.wn.se/forum/index.php)
-   Off Topic (https://www.wn.se/forum/forumdisplay.php?f=7)
-   -   regex svenska tecken (https://www.wn.se/forum/showthread.php?t=1044011)

Erik Stenman 2010-09-26 15:59

regex svenska tecken
 
Har precis suttit en evighet och försökt få regexps att fungera med skandinaviska tecken i php.

Tydligen ska man lägga till (*UTF8) i början av mönstret för att de ska matchas.
Dvs:

preg_match_all('/(*UTF8)[åäö]/', ... , ... );

Så hoppas det kan hjälpa någon.

Magnus_A 2010-09-26 18:12

Vilken version? u ska väl vara modifier för Unicode i PCRE annars?

orreborre 2010-09-26 21:43

Detta bör vara rätt sätt.

$pattern = '/[\p{L}]/u';

Magnus_A 2010-09-27 09:27

Eller detta:
Citat:

$string='abcdefghijklmnopqrstuvwxyzåäö';
preg_match_all('/[åäö]/u',$string,$result);
echo '<pre>';
print_r($result);
echo '</pre>';
Ger:
Citat:

Array
(
[0] => Array
(
[0] => å
[1] => ä
[2] => ö
)

)
Var det det du ville uppnå?

Tar du bort modifiern får du fortfarande matchning, men subpattern-arrayen blir fylld med lösa tecken istället:
Citat:

Array
(
[0] => Array
(
[0] => Ã
[1] => ¥
[2] => Ã
[3] => ¤
[4] => Ã
[5] => ¶
)

)
PHP Version 5.3.2-1

Orreborre: ditt förslag matchade alla tecken även de som inte är åäö.
Erik: Det uttrycket ger 'Compilation failed: (*VERB) not recognized' - varning


Alla tider är GMT +2. Klockan är nu 05:03.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson