一个单词是否包含土耳其语字符(可能带有数字)?

时间:2014-03-04 14:33:43

标签: java regex

我有一个有文字的语料库。我想对它们进行分析。我承认他们是土耳其人,但有些人不是。所以我想检查一个单词是否包含土耳其字符或数字。我的意思是:

hey4    valid
33      valid
kırp    valid
vxz     invalid
ğşiüçö  valid
xwq     invalid

如何快速检查(使用正则表达式)。我有数以百万计的代币,我想放弃其中一些我知道他们不是土耳其语的代币,因为他们包括非土耳其字母。

1 个答案:

答案 0 :(得分:1)

似乎你可以找到像

这样的东西
String[] data = {
        "hey4", //     valid
        "33",   //     valid
        "kırp", //     valid
        "vxz",  //     invalid
        "ğşiüçö",//    valid
        "xwq",  //     invalid
};
Pattern p = Pattern.compile("[abcçdefgğhıijklmnoöprsştuüvyz\\d]+",
        Pattern.CASE_INSENSITIVE);
// just in case shorter version of regex "[0-9a-pr-yzçğıöşü]+"
for (String s : data)
    System.out.println(s + "\t > " + p.matcher(s).matches());

输出:

hey4    > true
33      > true
kırp    > true
vxz     > false
ğşiüçö  > true
xwq     > false