Hello,
some special characters have special meaning in the specific search languages that are used in Alfresco. If such a special character is encountered without having been quoted, the search system evaluates them according to its rules, which may result in the query being either syntactically invalid or interpreted in a totally different way from what you expected / intended.
Even in quoted form there are some characters that may have special meaning, e.g. to define proximity conditions or sloop on terms of the phrase in a full text search. I am not aware that # is one of them, but I never had to use it to search for properly named files or other metadata properties.
Regards
Axel