Below is VMware best practices with regard to VM naming.
Maximum length of VM names
Virtual machine name limits are increased to 80 characters in vCenter Server 5.0 and later (VMware KB article 2051649)
Table of Contents
Restrictions of using special characters in names of entities
VMware recommends, to avoid using special characters in the names. (VMware KB Article 2046088)
The VMware vCenter Server and ESX/ESXi Server do not escape special characters used in the display names. For example, if a virtual machine name contains the % character, it does not escape the character. This causes issues when querying for the name from vSphere Web Client or using the SDK. This issue is seen when special characters like %, &, *, $, #, @, !, \, /, :, *, ?, “, <, >, |, ;, ' etc are contained in names of vSphere entities like virtual machine name, cluster name, datastore/folder/file name etc.