我知道如何通过这个
只检测阿拉伯字母 $string = " هذه اللغة العربية";
if (preg_match('/^[A-Za-z]/', $string)){}else{ // is arabic
我知道如何只检测英文字母
$string ="This is english language" ;
if (preg_match('/^[A-Za-z]/', $string)) { // is english
但是如果它是混合的,它将检测为阿拉伯语。
$string = "this is عربية" ;
if (preg_match('/^[A-Za-z]/', $string)) { }else { // is arabic
我想要的是当它混合时,然后检测它为英语而不是阿拉伯语。
和如何添加这些符号也@
所以当
$string = "@اتااتاتانت" ; // it will be also detected as english
谢谢
按照您的逻辑,您所需要的就是检查字符串是否包含ASCII字母:
if (preg_match('~[a-z]~ui', $input)) {
echo "It is NOT Arabic";
}
这里甚至没有使用'p{Arabic}