验证字符串 - 仅限特定语言字符

时间:2009-08-17 15:37:24

标签: c# .net javascript jquery

有没有办法检查字符串是否只包含给定语言的字符? (例如日语,希伯来语,阿拉伯语)

我想知道在Javascript \ Jquery和c#中是否有实现这种验证的方法?

修改

我不愿意检查字符串是否包含特定语言字典的有效单词。我想验证所有字符都属于那种语言。

5 个答案:

答案 0 :(得分:4)

@CD,所以你肯定能做到。

在C#中,只需:

string str = "this text has arabic characters";
bool hasArabicCharacters = str.Any(c => c >= 0xFB50 && c <= 0xFEFC);

答案 1 :(得分:0)

也许使用UNICODE charset的正则表达式?

答案 2 :(得分:0)

不,你无法检查确切的语言。您只能检查其他语言中没有的字符。例如,cyriclics,象形文字等。 与提示一样,您可以使用google translate api来定义用户输入文本的语言。

答案 3 :(得分:0)

internal bool HasArabicCharacters(string text)
{
    Regex regex = new Regex(
        "[\u0600-\u06ff]|[\u0750-\u077f]|[\ufb50-\ufc3f]|[\ufe70-\ufefc]");
    return regex.IsMatch(text);
} 

答案 4 :(得分:0)

这是针对阿拉伯文的,但我没有为其他语言测试

^[\u0621-\u064A\040]+$