Как определить, содержит ли строка символы на иврите с использованием PHP? - PullRequest
5 голосов
/ 18 декабря 2011

Попытка выяснить, как определить, содержит ли строка любые символы на иврите, безуспешно.

Как это можно сделать?

Ответы [ 3 ]

8 голосов
/ 18 декабря 2011

Если исходная строка в кодировке UTF-8, то более простой подход будет использовать \p{Hebrew} в регулярном выражении.

Вызов также должен иметь модификатор /u.

 = preg_match("/\p{Hebrew}/u", $string)
2 голосов
/ 18 декабря 2011

карта набора символов iso8859-8 .Диапазон E0 - FA, по-видимому, зарезервирован для иврита.

[\xE0-\xFA]

Для UTF-8 диапазон , зарезервированный для иврита , представляется от 0590 до 05FF.

Вот пример соответствия регулярному выражению в PHP:

echo preg_match("/[\u0590-\u05FF]/", $string);
1 голос
/ 24 сентября 2014

Самый простой подход:

preg_match('/[א-ת]/',$string)

Например,

$strings = array( "abbb","1234","aabbאאבב","אבבבב");

foreach($strings as $string)
{
    echo "'$string'  ";

    echo (preg_match('/[א-ת]/',$string))? "has Hebrew characters in it." : "is not Hebrew";

    echo "<br />";
}
...