SQL, expression régulière (REGEXP) et parenthèses

Résolu/Fermé
jiantox Messages postés 1081 Date d'inscription mardi 30 septembre 2008 Statut Membre Dernière intervention 26 janvier 2019 - 4 mai 2016 à 12:39
jiantox Messages postés 1081 Date d'inscription mardi 30 septembre 2008 Statut Membre Dernière intervention 26 janvier 2019 - 15 mai 2016 à 15:47
Bonjour,

j'essaie depuis plus de 2h30 d'extraire des smileys d'une table avec une regexp

SELECT *, COUNT(*) as nbsmile FROM matable WHERE macolone REGEXP '.*:).*|.*=).*|.*:(.*|.*:D.*|.*=D.*'
GROUP BY utilisateur


Le soucis est posé par la parenthèse (.

// Ceci fonctionne :
'.*:).*|.*=).*|.*:D.*|.*=D.*'

// Ceci ne fonctionne pas
'.*:).*|.*=).*|.*:(.*|.*:D.*|.*=D.*'

'.*:).*|.*=).*|.*:\(.*|.*:D.*|.*=D.*'

'.*:).*|.*=).*|.*:\\(.*|.*:D.*|.*=D.*'


Bref pas moyen d'échapper la parenthèse. Et je compte en ajouter un paquet :
(: (= :] =] [= =[ ]= :[ ^^
qui risquent chaqu'un de poser problème.

J'ai vu qu'il était possible avec des expressions XXL genre ([0-9A-Za-z'\&\-\.\/\(\)=:;]+)|((?::|;|=)(?:-)?(?:\)|D|P)), mais je compte par la suite compter chaque smiley indépendamment, d'où ma volonté d'utiliser les smileys "entiers"

Si quelqu'un à un truc, je suis preneur !

Merci d'avance
A voir également:

1 réponse

jiantox Messages postés 1081 Date d'inscription mardi 30 septembre 2008 Statut Membre Dernière intervention 26 janvier 2019 114
15 mai 2016 à 15:47
résolu en faisant autrement.
0