2010-12-15 35 views

Trả lời

43

According to Wikipedia, ký tự tiếng Ả Rập rơi vào phạm vi Unicode 0600 - 06FF. Vì vậy, bạn có thể sử dụng một biểu thức chính quy để kiểm tra nếu chuỗi chứa bất kỳ ký tự trong phạm vi này:

var arabic = /[\u0600-\u06FF]/; 
var string = 'عربية‎'; // some Arabic string from Wikipedia 

alert(arabic.test(string)); // displays true 
+0

xin vui lòng tôi có thể sử dụng điều này với jQuery, tôi muốn thêm lớp để phụ huynh của văn bản nếu văn bản là arabic? – kebir

+0

Làm việc như một sự duyên dáng :) cảm ơn ,, –

+0

Để (xấp xỉ) đếm số ký tự tiếng ả rập trong chuỗi 'string.match (/ [\ u0600- \ u06FF]/g) .length' – Rolf

1

Phạm vi cho các ký tự tiếng Ả Rập là:

0x600 - 0x6ff 

0x750 - 0x77f 

0xfb50 - 0xfc3f 

0xfe70 - 0xfefc 
1
function isArabic(text) { 
    var pattern = /[\u0600-\u06FF\u0750-\u077F]/; 
    result = pattern.test(text); 
    return result; 
} 
0

thế nào nó hoạt động đối với tôi là

$str = "عربية"; 
if(preg_match("/^\x{0600}-\x{06FF}]+/u", $str))echo "invalid"; 
else echo "valid"; 

Bạn có thể kiểm tra phạm vi mở rộng của ký tự tiếng Ả Rập

0x600 - 0x6ff 
0x750 - 0x77f 
0xfb50 - 0xfc3f 
0xfe70 - 0xfefc 

Vì vậy, biểu hiện sẽ trông giống như "/^\x{0600}-\x{06FF}\x{0750}-\x{077f}]+/u"
Good Luck

Các vấn đề liên quan