gremlin-AWS Neptune文本谓词
我用的是AWS海王星图。我需要得到状态名称以“A”开头的顶点。你能帮我处理一下这些文本谓词吗?它们在AWS Neptune gremlin上工作gremlin-AWS Neptune文本谓词,gremlin,amazon-neptune,Gremlin,Amazon Neptune,我用的是AWS海王星图。我需要得到状态名称以“A”开头的顶点。你能帮我处理一下这些文本谓词吗?它们在AWS Neptune gremlin上工作 {textconatinisprefix()、TextPrefix()、Text.contains()、.matches()、.contains()、.startWith()这些组合都不起作用}这可能取决于海王星允许什么,但以下是我书中的一些示例,如果海王星允许这些类型的Lambda,它们将起作用 gremlin> g.V().filter{it
{textconatinisprefix()、TextPrefix()、Text.contains()、.matches()、.contains()、.startWith()这些组合都不起作用}这可能取决于海王星允许什么,但以下是我书中的一些示例,如果海王星允许这些类型的Lambda,它们将起作用
gremlin> g.V().filter{it.get().property('state').value() == 'A*'}
如果您所需要的只是startsWith的行为,则可以避免使用Lambdas:
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')
为了完整起见,这里有一个指向这本书和相关资料的URL(都是开源的)
干杯
开尔文谢谢开尔文。
我得到了这个答案,它与AWS Neptune GDB配合得很好
g.V().hasLabel('airport').
has('city',between('Dal','Dam')).
values('city')
代替startsWith(),我们可以使用一些类似于文本谓词的java方法。现在是2019年,我们添加了另一个答案,指出在Apache TinkerPop 3.4中引入了新的文本谓词。其中包括startingWith()、endingWith()和containing()以及它们的逆形式notStartingWith()等。任何支持Apache TinkerPop 3.4或更高级别的图形数据库(包括Amazon Neptune)都应该提供这些谓词 希望这有助于人们今天找到这个问题,因为最初的问题是从2018年开始的 干杯
开尔文谢谢开尔文!between()步骤符合我的要求。你能给我推荐其他谓词吗,比如(textContains(),textContainsPrefix())替代书中的6.6-Janus图形文本搜索谓词。我可能使用
between
技术的唯一原因是它完全避免使用Lambdas。如果您只需要一个带('a')的启动,您可以在('AA','AB')之间执行操作
等,因此具有('state',在('AA','AB'))
是的,谢谢开尔文。你的回答对我很有用。它是“包含”(而不是包含):-)
gremlin> g.V().values('state').filter{(''+it).startsWith('A')}