A correspondência de padrões em consultas JPA é limitada apenas a
_- qualquer personagem%- qualquer string
REGEXP tem sintaxe de operador no MySQL (SELECT 'a' REGEXP 'A' ) então não pode ser usado com CriteriaBuilder.function() API. Receio que o melhor seja executar a consulta SQL nativa. Se você estiver usando o Hibernate, você tem mais uma opção. Você pode empacotar
REGEXP operador em SQLFunctionTemplate , estenda o dialeto de hibernação
e execute com CriteriaBuilder.function() .