IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Oracle Discussion :

Expressions régulières et Oracle


Sujet :

Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Auditeur informatique
    Inscrit en
    Janvier 2006
    Messages
    178
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Auditeur informatique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 178
    Par défaut Expressions régulières et Oracle
    Bonjour,

    J'aimerais savoir si on peut gérer les expressions régulières dans Oracle ?

    Cordialement,
    Nico

  2. #2
    Rédacteur

    Inscrit en
    Septembre 2004
    Messages
    626
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 626
    Par défaut
    Bonjour,


    A partir d'Oracle 10g oui, par exemple http://www.oracle.com/technology/obe...exp/regexp.htm

    Avant la 10g, il y a parfois moyen de s'en sortir autrement.

    Qu'est-ce-que tu souhaites faire exactement ?


    Laly.
    In the heart of the truly greats, perfection is never achieved but endlessly pursued.

    Mon article sur les fonctions analytiques d'Oracle (calcul de moyennes mobiles, de quartiles et bien d'autres...)

  3. #3
    Membre confirmé
    Profil pro
    Auditeur informatique
    Inscrit en
    Janvier 2006
    Messages
    178
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Auditeur informatique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 178
    Par défaut
    Citation Envoyé par lalystar
    Bonjour,


    A partir d'Oracle 10g oui, par exemple http://www.oracle.com/technology/obe...exp/regexp.htm

    Avant la 10g, il y a parfois moyen de s'en sortir autrement.

    Qu'est-ce-que tu souhaites faire exactement ?


    Laly.
    Merci,

    En fait, j'ai deux problèmes :

    La première chose est que je dispose d'une table avec 4 champs, et je veux en faire une table avec 2 champs. Le premier champ, aucun problème, mais dans les 3 champs suivants se trouvent les données dont j'ai besoin. Ces données sont dans un des 3 champs et dans les deux autres champs j'ai d'autres données qui ne m'intéresse pas. Déjà à ce niveau je sais pas trop comment faire en SQL

    Dans un deuxième temps, dans la mesure où la donnée dont j'ai besoin a toujours la même structure, pour chaque ligne de la table je dois analyser le contenu des 3 champs, et dès lors que j'ai trouvé la donnée dont j'ai besoin, je l'insère dans la nouvelle table.

    En PHP cela ne pose aucun problème, mais je dois réaliser ce traitement uniquement par Oracle8i (V 8.1.7.4.0 ).

    Merci pour votre aide,

    Nico

  4. #4
    Membre confirmé
    Profil pro
    Auditeur informatique
    Inscrit en
    Janvier 2006
    Messages
    178
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Auditeur informatique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 178
    Par défaut
    La version 8i ne gère t-elle pas les expressions régulières ?

  5. #5
    j6m
    j6m est déconnecté
    Membre confirmé
    Inscrit en
    Février 2006
    Messages
    87
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 87
    Par défaut
    si tu veux faire de l'expression régulière entre une table A et une table B pourquoi ne pas exporter dans un fichier et mouliner ailleurs dans un endroit qui comprend [*,[nimportekoi}&lereste] et réimporter ensuite dans ta table B? Ou alors SQL*Loader (expressions trés trés régulières...)

  6. #6
    Membre confirmé
    Profil pro
    Auditeur informatique
    Inscrit en
    Janvier 2006
    Messages
    178
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Auditeur informatique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 178
    Par défaut
    Merci pour ta réponse,

    Faire la moulinette dans un autre endroit implique de sortir du contexte de la base, or je dois réaliser ce traitement de manière totalement autonome, car l'appli est destiné à un public qui ne connait pas le SQL, il faut donc que tout se passe dans mon fichier SQL.

    Le soucis, c'est que je découvre Oracle, je ne suis qu'un "MySQL-iste", j'ai donc beaucoup de lacunes sous Oracle... Dans tous les cas je vais expliquer mon problème de manière peut-être plus simple que lors de mon dernier post, qui n'a pas déchainé les internautes (le week end porte conseil ).

    On va dire que j'ai une table avec 4 champs comme suit :

    ticket | iden1 | iden2 | iden3
    -------------------------------------------------
    0123 | 0102 | V1255 |
    0456 | | 5685 |
    0789 | V4586 | | 6374


    Je veux en faire une table avec deux champs, comme suit :

    ticket | iden1
    ------------------
    0123 | 0102
    0456 | 5685
    0789 | 6374

    En fait les données qui se trouvent dans les champs idenX et dont j'ai besoin ont toujours la même structure, je peux donc par une règle d'expressions régulières les retrouver, et ensuite l'insérer dans la nouvelle table

    Je pense que cette explication est plus claire, en espérent que vous puissiez m'aider.

    @+
    Nico

  7. #7
    Expert confirmé
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Par défaut
    Oui, d'ailleurs il y a un example dans la FAQ Oracle
    http://oracle.developpez.com/faq/?page=12#chaineformat

  8. #8
    Expert confirmé
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Par défaut
    Il y a un article nouvellement paru sur un blog sur cette question
    http://technology.amis.nl/blog/?p=1258

Discussions similaires

  1. Les expressions régulières en Oracle 10g et plus
    Par bsidy1 dans le forum PL/SQL
    Réponses: 1
    Dernier message: 04/08/2011, 15h36
  2. [Oracle 8i] expression régulière
    Par lalystar dans le forum Oracle
    Réponses: 9
    Dernier message: 09/02/2005, 14h56
  3. [expression régulière] mon cerveau fait des noeuds..
    Par nawac dans le forum Algorithmes et structures de données
    Réponses: 7
    Dernier message: 27/05/2003, 11h06
  4. Expressions réguliéres
    Par Tooms dans le forum Langage
    Réponses: 4
    Dernier message: 06/12/2002, 19h42
  5. Réponses: 5
    Dernier message: 11/06/2002, 16h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo