Full text indexing (https://neo4j.com/docs/cypher-manual/current/administration/indexes-for-full-text-search/ ) works well for me except the default analyzer strips hyphens from indexing.
Consider that the search for "Emergency" should not return "Non-Emergency". Product codes often have dashes in them too.
This is actually a lucene question/issue. I did find this:
So this works:
CALL db.index.fulltext.createNodeIndex("IndexName",["Label"],["property"],
{ analyzer: "classic"}) // does not throw out hyphens, e.g. Non-Emergency is one word
This doesn't seem to be documented in the Neo4J documentation.