我想在字符串中检测阿拉伯语或波斯语字符。
例如:
在string = "مشخصات، قیمت و خرید لپ تاپ 15 اینچی ایسر مدل Aspire ES1-533-C4UH"
并返回true
并搜索字符串= "Aspire ES1-533-C4UH"
并返回false
string pattern = @"^[\p{IsArabic}\s\p{N}]+$";
string input = @"مشخصات، قیمت و خرید لپ تاپ 15 اینچی ایسر مدل Aspire ES1-533-C4UH";
RegexOptions options = RegexOptions.RightToLeft;"
foreach (Match m in Regex.Matches(input, pattern, options))
{
if(m.Value !="")
{
bool x=true;
}
else
x=false;
}
但这不起作用。
答案 0 :(得分:6)
尝试使用它(我使用它并且它有效)。
此Regex
接受UTF范围内的所有阿拉伯字母。
Regex regex = new Regex("[\u0600-\u06ff]|[\u0750-\u077f]|[\ufb50-\ufc3f]|[\ufe70-\ufefc]");
return regex.IsMatch(text);