If enough people search for it, Google picks up on it and adds in some sort of override to the no-punctuation rule. This is why "C#" and "F#" return different results from "C" and "F", but "Z#" gets no such benefit. Other times the exceptions apply to broad patterns of letters, since any single letter with "++" appended will give specific results even if it's not the name of anything (try "y++"), but + signs are in general ignored ("+++what--is+happening--" gives the same results as "what is happening").