GNU find por defecto usa expresiones regulares de emacs, puede cambiar ese tipo con -regextype opción (ver man find).
Si usa -regextype posix-egrep tu expresión parece funcionar. Probablemente también podría reducir el patrón a ^.+(jpg|gif|exe)$
Con emacs:find . -regex '.+\(jpg\|gif\|exe\)$' . Consulte esta sección del manual de emacs para conocer esas reglas específicas de expresiones regulares. Necesitas escapar | y () para que no sean literales.
En emacs expresiones regulares ( , | y ) son literales a menos que escapado, esto es exactamente lo contrario de todos los demás formatos de expresiones regulares.
Tu expresión funciona como ^.+\.\(jpg\|exe\|gif\)$ .