Java 正则表达式包括字母表中除某些字母之外的所有字母

2022-09-02 02:23:03

我需要做的是确定一个单词是否由除某些字母以外的字母组成。例如,我需要测试一个单词是否由英语字母表中除字母以外的字母组成:I,V和X。

目前,我有这个长正则表达式用于上面的简单任务:

Pattern pattern = Pattern.compile("[ABCDEFGHJKLMNOPQRSTUWYZ]+");

你们中有人知道从Java正则表达式中排除某些字母的任何速记方法吗?谢谢。


答案 1

可以使用运算符通过减法创建复合字符类:&&

String regex = "[A-Z&&[^IVX]]+";

答案 2

您只需在字符类中指定字符范围:

[A-HJ-UWYZ]+