Kelvin Lawrence created TINKERPOP-2652:
------------------------------------------

             Summary: Add TextP.regex to the text predicate set
                 Key: TINKERPOP-2652
                 URL: https://issues.apache.org/jira/browse/TINKERPOP-2652
             Project: TinkerPop
          Issue Type: New Feature
          Components: process
    Affects Versions: 3.6.0
            Reporter: Kelvin Lawrence


We have over the years, going back to a discussion thread from January 2018 
[https://lists.apache.org/thread/r76r47jjxmomz9hvsx96www6r8qnh60t] had 
discussions of various text predicates that Gremlin lacks but are commonly 
found in other query languages such as SPARQL and Cypher. We currently have 
some TextP predicates, but not a specific regex one. I propose we add 
TextP.regex and for the reference implementation leverage the Java Pattern and 
Matcher classes. It may be that other implementations will choose to use a 
different REGEX engine but at least this will get the support into the Gremlin 
language. As a first pass, I envision this can be something quite simple along 
these lines (from a small prototype I put together).

 
{code:java}
         \,,,/
         (o o)
-----oOOo-(3)-oOOo-----
plugin activated: tinkerpop.server
plugin activated: tinkerpop.utilities
plugin activated: tinkerpop.tinkergraph
gremlin> g=traversal().withGraph(TinkerGraph.open())
==>graphtraversalsource[tinkergraph[vertices:0 edges:0], standard]
gremlin> g.addV('test').property('k1','I like llamas')
==>v[0]
gremlin> g.V().has('k1',TextP.regex("l[i|x]ke"))
==>v[0]

gremlin> g.V().has('city',TextP.regex("^Dallas"))                               
            
==>v[8]                                                                         
            
==>v[186] {code}



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to