Antlr:如何匹配不是CJK字母的字母?

时间:2017-08-24 22:41:23

标签: java parsing unicode antlr antlr4

除了CJK(中日韩)字符外,我想匹配由Unicode字母组成的单词。 CJK字符应单独和单独识别。 Unicode字母是Java Character.isLetter(ch)为true的任何字符。

我如何识别每个字母而不是CJK?在JFlex中,我这样做了:

cjk=[\u4E00-\u9FCF]|[\u3400-\u4DBF]|...

/* this translates to ([:letter:] and (not {cjk})) */
letter=!(![:letter:] | {cjk})

word=letter+

此语法在Antlr中不起作用。我知道我可以使用以下代码识别一封信,但我不知道如何排除CJK。

LETTER :    [\p{L}];

0 个答案:

没有答案