php validate, если строка алфавитная, включая кириллицу, греческий или любую юникодную букву

Я пытаюсь проверить строку в алфавитном порядке, включая несколько наборов символов:

function is_string($str){
    return preg_match("/^[a-zA-Z\p{Cyrillic}\p{Cyrillic}]+$/u", $str) ? TRUE : FALSE;
}

но это не работает, если строка содержит некоторые другие символы разных языков (ç, ë используются на албанском языке)

is_string('ç');//false
is_string('ë');//false

Есть ли какая-либо общая функция или что-то, что решит эту проблему для любого набора символов?

1 ответ

Решение

\p{L}\p{M}* соответствует любой букве, включая диакритические знаки (если есть)

Другие вопросы по тегам