2017-01-24 4 views
0

In meinem Frühling Data Neo4j 4 Projekt Neo4j Datenbank habe ich eine Knoten mit name und description String-Eigenschaften.Neo4j unscharfe Suche

Ich muss Fuzzy-Suchfunktionalität über diese Eigenschaften hinzufügen. Gibt es in Neo4j/Spring Data Neo4j eine Out-of-the-Box-Funktionalität, um dies zu implementieren? Wenn ja/nein, können Sie bitte vorschlagen, wie es umgesetzt werden kann?

+0

Ich glaube nicht, dass es gibt - es gibt Regexes in Cypher, aber das ist es. –

+1

derzeit, nein ... möchten Sie möglicherweise die elastische Suche zum Mix hinzufügen. – manonthemat

Antwort

1

Wenn Sie einen Repository genannt:

public interface ProductRepository extends CrudRepository<Product, Long> { 

    List<Product> findByNameLike(String name); 

    List<Product> findByDescriptionLike(String description); 
} 

können Sie dann so etwas tun (seit 4.2.0):

List<Product> products = productRepository.findByNameLike("*on*"); 

, die ein Wildcard Spiel mit regulären Ausdrücken tun (siehe Cypher =~ Operator).

Die negierte Version von diesem; Der Name findByNameNotLike() wird ebenfalls unterstützt.