Bonjour à tous,

J'ai besoin d'aide en expressions régulières, en utilisant la fonction REGEXP_SUBSTR.
Je voudrais découper une chaîne, faire un "split" avec les expressions régulières.

J'ai un champ VARCHAR2 qui se compose ainsi :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
'NOM~PRENOM~ADRESSE~CODEPOSTAL~VILLE'
Je voudrais découper ma chaîne pour avoir ces données dans des champs distincts.
Vous allez me dire que je peux faire ça en PL/SQL, mais je persiste à vouloir utiliser les expressions régulières, pour faire ça avec un simple SELECT, à l'aide des expressions régulières

Pour l'instant j'arrive à faire extraire le 1er et le 2eme champ :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
SELECT REGEXP_SUBSTR(MONCHAMP,'[^~]+~') AS NOM
     , REGEXP_SUBSTR(MONCHAMP,'~[^~]+~') AS PRENOM
FROM (SELECT 'NOM~PRENOM~ADRESSE~CODEPOSTAL~VILLE' MONCHAMP FROM DUAL)
Qui me donne :
NOM : NOM~
PRENOM : ~PRENOM~

J'aimerai ne pas avoir les séparateurs...

Merci !