Usar expressões regulares no JPA CriteriaBuilder

Estou usando o JPA CriteriaBuilder para selecionar entidades do tipoMyEntity de um banco de dados MySQL da seguinte maneira:

String regExp = "(abc|def)"
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaQuery query = cb.createQuery( MyEntity.class );
root = query.from( MyEntity.class );
predicates = new ArrayList<Predicate>();

predicates.add( cb.like( root.<String>get( "name" ), regExp ) );

Portanto, o resultado da consulta deve conter qualquer entidade em que oname O valor corresponde ao dado regExp. Mas a lista de resultados está sempre vazia. Alterando o regExp para/(abc|def)/g não tem efeito, nem a adição do curinga%

Como fazer a correspondência de padrões funcionar?

Como alternativa: Como posso usar o MySQL REGEXP nativo junto com o CriteriaBuilder?

questionAnswers(3)

yourAnswerToTheQuestion