2016-09-28 1 views

Répondre

2

Il n'y a pas la fonction similaire à REPLACE en prenant un regex comme paramètre.

Puisque vous utilisez Neo4j 2.2, vous ne pouvez pas non plus l'implémenter comme une procédure.

La seule façon de le faire est par le fractionnement et d'assemblage (en utilisant une combinaison de reduce et substring):

RETURN substring(reduce(s = '', e IN filter(e IN split('ranchod-das-chanchad-240190---Funshuk--Wangdu', '-') WHERE e <> '') | s + '-' + e), 1); 

Il peut être plus facile à lire si vous le décomposer:

WITH split('ranchod-das-chanchad-240190---Funshuk--Wangdu', '-') AS elems 
WITH filter(e IN elems WHERE e <> '') AS elems 
RETURN substring(reduce(s = '', e IN elems | s + '-' + e), 1);