It may depend on what Neptune allows but here are some examples taken from my book that will work if Neptune allows these types of Lambda.
g.V().hasLabel('airport').
filter{it.get().property('desc').value().contains('Dallas')}
// Using a filter to search using a regular expression
g.V().has('airport','type','airport').
filter{it.get().property('city').
value ==~/Dallas|Austin/}.values('code')
// A regular expression to find any airport with a city
//name that begins with "Dal"
g.V().has('airport','type','airport').
filter{it.get().property('city').value()==~/^Dal\w*/}.values('city')
You can avoid Lambdas if all you need is the behavior of a startsWith:
g.V().hasLabel('airport').
has('city',between('Dal','Dam')).
values('city')
For completeness here is a URL to the book and related material (all open source) https://github.com/krlawrence/graph
Cheers
Kelvin