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

Langage SQL Discussion :

REGEX comment je m'y prend?


Sujet :

Langage SQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé

    Profil pro
    Inscrit en
    Août 2008
    Messages
    1 222
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 1 222
    Par défaut REGEX comment je m'y prend?
    Bonsoir voici un tableau avec un champ de lien d'image:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    	ID 	lien
           ---------------------------------
    	1 	6ES5308-3UA12.JPG
    	2 	6ES5308-3UA12-A.JPG
    	3 	6ES5308-3UA12-B.JPG
    	4 	6ES5988-3LA11.JPG
     	5 	6ES5955-3LC14.JPG
    	6 	6ES5430-4UA13.JPG
     	7 	6ES5430-4UA13-A.JPG
    	8 	6ES5310-3AB11.JPG
     	9 	6ES5310-3AB11-A.JPG
    j'aimerai que SQL me donne que les lien qui n'ont pas de suffixe -A ou -B ou -C etc...
    donc sur cette liste je souhaite qui selectionne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     
    	1 	6ES5308-3UA12.JPG
    	4 	6ES5988-3LA11.JPG
     	5 	6ES5955-3LC14.JPG
    	8 	6ES5310-3AB11.JPG
    j'ai essayer ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT * FROM `photos` WHERE lien REGEXP '[^a-z]{1,}-A.jpg]$'
    ici je n'ai pas de résultat
    je souaite que ma regex ne prend pas de donne du champ lien toute les donnée qui possède un suffixe -A.jpg

    merci de votre réponses si vous avez une idée.

  2. #2
    Membre éclairé Avatar de Jihnn
    Inscrit en
    Décembre 2005
    Messages
    330
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 330
    Par défaut
    Bonjour,

    Pour quel SGBDR ? Les images ont-elles toujours la même syntaxe (7 caractères suivi d'un trait d'union suivi de 5 caractères puis l'extension ou -A/B/... et l'extension) ? Si c'est le cas, vous n'avez qu'à utiliser une regexp du genre [a-z0-9]{7}-[a-z0-9]{5}.JPG.

  3. #3
    Membre éprouvé

    Profil pro
    Inscrit en
    Août 2008
    Messages
    1 222
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 1 222
    Par défaut
    merci de la réponse
    j'utlise mysql couplé avec php
    maleureusement il peut avoir plus ou moin 7 caractère
    ca peut être
    TSX17
    XBTK1010A ...
    c'est le {1,} qui ne fontionne pas dans ma requête?

  4. #4
    Membre éclairé Avatar de Jihnn
    Inscrit en
    Décembre 2005
    Messages
    330
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 330
    Par défaut
    Si je traduis votre regexp en français : chaîne qui ne contient pas de lettres et qui se termine par -A.jpg]

    Cette regexp pourrait-elle fonctionner comme vous le souhaitez : [a-z0-9-]+[^A-Z-].JPG

  5. #5
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 998
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 998
    Billets dans le blog
    6
    Par défaut
    dans votre cas un LIKE suffit et sera bien plus efficace :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    WHERE LIEN LIKE '_____________.JPG'
    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  6. #6
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 454
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 454
    Par défaut
    Ou peut-être même une simple différence :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT *
      FROM photos
     WHERE SUBSTRING(lien FROM -6 FOR 1) <> '-'

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 5
    Dernier message: 11/01/2007, 09h50
  2. [Regex] Comment faire une regex nongreedy ?
    Par Bleuarff dans le forum Framework .NET
    Réponses: 5
    Dernier message: 11/08/2006, 09h51
  3. Réponses: 3
    Dernier message: 25/04/2006, 23h07
  4. [Regex] Comment gérer les parenthèses ?
    Par davcha dans le forum Framework .NET
    Réponses: 7
    Dernier message: 27/03/2006, 14h28
  5. [Regex] Comment tester une chaîne ASCII 7bits ?
    Par Raduris dans le forum Framework .NET
    Réponses: 4
    Dernier message: 27/03/2006, 09h42

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