Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] preg_match i japońskie znaki
EdeusEx
post
Post #1





Grupa: Zarejestrowani
Postów: 49
Pomógł: 1
Dołączył: 6.04.2008

Ostrzeżenie: (20%)
X----


Witam.

Mam do obsługi znaki alfanumeryczne, japońskie (hiragana, katakana, kanji) oraz znaki specjalne (spacja, przecinek, małpa, procent, dolar itp).

Próbowałem zrobić coś takiego (z PHP.net):

  1. $pattern ='/^[-a-zA-Z0-9_ \\\!\@\#\$\%\^\&\*\(\)\=\|\+\;\:\'\"\,\.\/\<\>\?\-\x{30A0}-\x{30FF}'
  2. .'\x{3040}-\x{309F}\x{4E00}-\x{9FBF}\s]*$/u';
  3. $match_string = 'カタカナ ひらがな 漢字 alfabet 09123 !-@#$,.;';
  4.  
  5. if (preg_match($pattern, $match_string)) {
  6. echo "Found - pattern $pattern";
  7. } else {
  8. echo "Not found - pattern $pattern";
  9. }


Ale brakuje jeszcze kodowania innych znaków związanych z japońskim ( (większa spacja)、。’、”「」()).
Czy zna ktoś zakres kodowania na te znaki ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
Crozin
post
Post #2





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

Ostrzeżenie: (0%)
-----


1. Zadbaj o czytelność swojego kodu.
2. Podane przez Ciebie znaki są w bloku CJK Symbols and Punctuation
Kod
$specialChars = preg_quote('!@#$%^&*()/*-+=[]{};:\'",.<>?', '/');

$pattern = '/
    ^[
        \w\s                  # a-Z0-9_, whitespaces
        ' . $specialCahrs . ' # special characters
        \x30A0-\x3oFF         # Japanese hiragana
        \x3040-\x309F         # Japanese katakana
        \x4E00-\x9FBF         # Japanese kanji
        \x3000-\x303F         # CJK Symbols and Punctuation
    ]*$
/xu';


Ten post edytował Crozin 11.11.2010, 18:11:32
Go to the top of the page
+Quote Post
EdeusEx
post
Post #3





Grupa: Zarejestrowani
Postów: 49
Pomógł: 1
Dołączył: 6.04.2008

Ostrzeżenie: (20%)
X----


Przedział jest chyba za duży.

Cytat
Warning: preg_match() [function.preg-match]: Compilation failed: range out of order in character class at offset 82


Ale chyba nie za bardzo da się to jakoś robić.

Ja nie mam pomysłu ...
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 6.10.2025 - 07:14