First, i\'m read the documentation as follow
http://download.oracle.com/javase/1.4.2/docs/api/java/util/regex/Pattern.html
And i want find any punctuation c
You're matching two characters, not one. Using a (negative) lookahead should solve the task:
(?![@',&])\\p{Punct}