Het lijkt een oude vraag, dus misschien heb je al een oplossing gehad, maar hier hoe ik hetzelfde probleem heb opgelost:
@Query(value = "{'title': {$regex : ?0, $options: 'i'}}")
Foo findByTitleRegex(String regexString);
met behulp van de /?0/
notatie werkt niet omdat Spring Data een tekenreekswaarde tussen aanhalingstekens plaatst