sabri sabri - 4 months ago 16
PHP Question

php validate if string is alphabetic including cyrillic, greek or any unicode letter

I am trying to validate string is alphabetic including multiple character sets:

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


but it fails if string contains some other characters of different languages (ç, ë are used in albanian language)

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


Is there any general function or something which will fix this problem for any character set?

Answer

\p{L}\p{M}* matches any letter including diacritics (if any.)