Here is my code: (It work correctly for English language)
$str1 = "itt is a testt";
$str2 = "it is a testt";
$str3 = "itt is a test";
$str4 = "it is a test";
echo preg_match("[\b(?:it|test)\b]", $str1) ? 1 : 2; // output: 2 (do not match)
$str2 // output: 1 (it matches)
$str3 // output: 1 (it matches)
$str4 // output: 1 (it matches)
But I don't know why, the above REGEX does not work correctly for Persian language: (it always returns 1
)
$str1 = "دیوار";
$str2 = "دیوارر";
echo preg_match("/[\b(?:دیوار|خوب)\b]/u", $str1) ? 1 : 2; // output: 1
echo preg_match("/[\b(?:دیوار|خوب)\b]/u", $str2) ? 1 : 2; // output: 1 (it should be 2)
How can I fix it?