Précédent   Forum des professionnels en informatique > Bases de données > Oracle > SQL
SQL Forum d'entraide sur le SQL pour Oracle
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 02/11/2011, 15h12   #1
Membre chevronné
 
Avatar de nathieb
 
Homme olivier Thiébaut
Chef de projet/Architecte
Inscription : mai 2004
Messages : 626
Détails du profil
Informations personnelles :
Nom : Homme olivier Thiébaut
Âge : 45
Localisation : France

Informations professionnelles :
Activité : Chef de projet/Architecte
Secteur : Service public

Informations forums :
Inscription : mai 2004
Messages : 626
Points : 704
Points : 704
Par défaut Oracle 11G REGEXP_LIKE

Bonjour,

Dans une table j'ai des lignes avec <vt> en fin de ligne.
J'ai essayé
Code :
SELECT nom FROM matable WHERE regexp_like(nom,'chr(13)')
Mais ce morceau de code ne détecte pas ce symbole <vt> qui est un caractère ascii
de type fin de ligne ( soit \n )

Je dois générer un fichier XML et ce <vt> pose un pb de génération.

Olivier
__________________
Architecte déstructurant,
be cool, be free

J2EE - PHP - Free OS
nathieb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/11/2011, 11h57   #2
Membre régulier
 
Inscription : septembre 2008
Messages : 85
Détails du profil
Informations forums :
Inscription : septembre 2008
Messages : 85
Points : 89
Points : 89
Bonjour,

La requete que vous avez ecrite recherche les lignes qui contiennent textuellement "chr(13)" (ce n'est pas ce que vous souhaitez)

Je vous conseille de consulter les pages suivantes pour résoudre votre problème :
http://download.oracle.com/docs/cd/B...ditions018.htm
http://download.oracle.com/docs/cd/B...01.htm#i690819
spdev666 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/11/2011, 13h55   #3
Membre Expert
 
Avatar de pacmann
 
Homme Pacman Pacman
Business analyst
Inscription : juin 2004
Messages : 1 417
Détails du profil
Informations personnelles :
Nom : Homme Pacman Pacman
Âge : 31
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Business analyst
Secteur : Finance

Informations forums :
Inscription : juin 2004
Messages : 1 417
Points : 2 309
Points : 2 309
Salut,

Pas sûr que tu aies besoin de REGEXP pour ça.

Peut être :
Code :
1
2
 
LIKE '%' || chr(13) || '%'
Sinon, si tu as un exemple de ligne contenant le caractère, tu peux commencer par SELECT ASCII(lechar) pour t'assurer que c'est un chr(13)
__________________

(c'est ma photo)
Paku, Paku !
Pour les jeunes incultes : non, je ne suis pas un pokémon...

Le pacblog : http://pacmann.over-blog.com/
pacmann est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/11/2011, 14h29   #4
Membre chevronné
 
Avatar de nathieb
 
Homme olivier Thiébaut
Chef de projet/Architecte
Inscription : mai 2004
Messages : 626
Détails du profil
Informations personnelles :
Nom : Homme olivier Thiébaut
Âge : 45
Localisation : France

Informations professionnelles :
Activité : Chef de projet/Architecte
Secteur : Service public

Informations forums :
Inscription : mai 2004
Messages : 626
Points : 704
Points : 704
Par défaut Explications

Bonjour,

effectivement, j'ai trouvé et utilisé
Code :
1
2
3
 
SELECT NOM FROM matable WHERE REGEXP_LIKE(NOM,'chr(13)');
ou 11
et j'ai fait
Code :
SELECT ASCII(lechar) FROM DUAL
qui s'avère un carré, il me retourne 11

mais malgré tout quand j'utilise
Code :
SELECT NOM FROM matable WHERE REGEXP_LIKE(NOM,'chr(11)');
rien à faire.

J'ai simplement fait un copier coller du soit disant caractère, et je l'ai injecté dans la requête et cela fonctionne, mais je vois un carré !
si je copie dans un éditeur de texte c'est <vt> qui correspond bien
à un vertical tab. dans le doute ... .


Olivier
__________________
Architecte déstructurant,
be cool, be free

J2EE - PHP - Free OS
nathieb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/11/2011, 15h16   #5
Membre Expert
 
Avatar de pacmann
 
Homme Pacman Pacman
Business analyst
Inscription : juin 2004
Messages : 1 417
Détails du profil
Informations personnelles :
Nom : Homme Pacman Pacman
Âge : 31
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Business analyst
Secteur : Finance

Informations forums :
Inscription : juin 2004
Messages : 1 417
Points : 2 309
Points : 2 309
chr(11) = '<vt>'

'chr(11)' = 'chr(11)'

=> Tente d'enlever les quotes
__________________

(c'est ma photo)
Paku, Paku !
Pour les jeunes incultes : non, je ne suis pas un pokémon...

Le pacblog : http://pacmann.over-blog.com/
pacmann est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 12h48.


 
 
 
 
Partenaires

Hébergement Web