我想要Java中的regex匹配所有国家(列表除外)。
例如,除西班牙以外的所有国家/地区,我都尝试过:

[A-Z]{2}&&^(ES)


哪里


PT应该是true
DE应该是true
ES应该是false


除国家列表外的所有国家

[A-Z]{2}&&^(ES|PT|DE)


谢谢

最佳答案

可以使用零宽度的负超前查找来完成此操作,因此最终的正则表达式将为^(?!ES|PT|DE)[A-Z]{2}$,表示您需要除ESPTDE之外的2个大写字母。或者,如果您使用(?!ES|PT|DE)[A-Z]{2}所提到的方法@WiktorStribiżew,则只需matches(String regex)

关于java - java regex字符串匹配除列表以外的两个字母国家,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41568314/

10-15 21:59