Мне нужно регулярное выражение, которое принимает только греческие символы и пробелы для поля имени в моей форме (PHP). Я пробовал несколько выводов в сети, но не повезло. Любая помощь будет оценена.
Я не слишком точен по греческому алфавиту, но если вы хотите сделать это с помощью латинского алфавита, вы сделаете так:
/^[a-zA-Z\s]*$/
Итак, чтобы сделать это с греческим, вы заменяете a
и z
первой и последней буквами греческого алфавита. Если я правильно помню свои библейские фрагменты, это α
и ω
. Таким образом, код будет:
/^[α-ωΑ-Ω\s]*$/
Полное письмо решение:
/^[A-ZA-zΑ-Ωα-ωίϊΐόάέύϋΰήώ]+$/
Греческий & Coptic в utf-8, кажется, находится в диапазоне U + 0370 – U + 03FF. Имейте в виду: пробел, a -
, a .
и т.д. не ….
Современный греческий алфавит в UTF-8 находится в диапазоне U + 0386 – U + 03CE .
Поэтому регулярное выражение, которое нужно принять только греческим символам, это:
$regex_gr = '/^[\x{0386}-\x{03CE}]+$/u';
или (с пробелами)
$regex_gr_with_spaces = '/^[\x{0386}-\x{03CE}\s]+$/u';