Faire correspondre les chaînes avec l'expression régulière dans le cas d'un défaut

J'ai besoin de faire correspondre les chaînes dans mon tableau qui ne sont pas en commençant par "KO" de la chaîne.
J'ai essayé cette

String[] ar = {"KB_aaa","KB_BBB", "K_CCC", "!KBD", "kb_EEE", "FFFF"};
Pattern p = Pattern.compile("[^(^KB)].*");

for(String str : ar)
{
    Matcher m = p.matcher(str);
    if(m.matches())
         System.out.println(str);
}

Mais toujours pas de matches "K_CCC".
Grâce

source d'informationauteur Arsen Alexanyan | 2011-10-05