Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Expression r=c3=a9guli=c3=a8re

4 réponses
Avatar
Migrec
Bonjour,

Je dois trouver ce qui ne colle pas dans un fichier XML.
Comme indice, j'ai cette expression régulière : (.|\n)*[^\s](.|\n)*

Comment puis-je savoir ou elle est située ? Apparemment, la chaîne en
question est encadrée par des balises XML <balise></balise>
Une piste ?
--
Migrec

4 réponses

Avatar
Migrec
Bonjour,
Merci ! Site très utile.
Mais j'ai encore du mal à comprendre ce que l'expression cible.
Visiblement, la chose suivante est ciblée (ou non ciblée)
<BaliseA>
<BaliseB attribut="valeur">
<comment/>
</BaliseB>
</BaliseA>
Il devrait y avoir une valeur qui est absente et que le script détecte.
Cordialement,
--
Migrec
Le 01/07/2019 à 17:00, Guillaume Clercin a écrit :
Bonjour,
On Mon, 1 Jul 2019 16:11:01 +0200
Migrec wrote:
Bonjour,
Je dois trouver ce qui ne colle pas dans un fichier XML.
Comme indice, j'ai cette expression régulière : (.|n)*[^s](.|n)*
Comment puis-je savoir ou elle est située ? Apparemment, la chaîne en
question est encadrée par des balises XML <balise></balise>
Une piste ?

Pour tester des regex, je vais sur regex101.com, je trouve ce site
pratique. On a même un débogueur de regex.
--
Migrec

Cordialement,
Avatar
Daniel Caillibaud
Le 01/07/19 à 21h49, Migrec a écrit :
Mais j'ai encore du mal à comprendre ce que l'expression cible.

Elle est très large, car elle cible toute chaîne contenant un car actère "non
espace" précédée d'autant de caractères qu'on veut (0 i nclus) suivie
d'autant de caractères qu'on veut (idem).
Donc en fait la seule chose qu'elle ne match pas est une chaine ne
contenant aucun caractère "non espace" (ou tabulation ou …), s oit une
chaîne vide ou ne contenant que des espaces|tabulations.
(.|n)*[^s](.|n)*
^^^^^^ n'importe quel caractère (fin de ligne compris)
^ en 0 à N exemplaires
^^^^^ un caractère non espace
^^^^^^ n'importe quel caractère (fin de ligne compris)
^ en 0 à N exemplaires
Je vois pas trop dans quel cas ça peut être utile, mais je connai s pas le
contexte.
--
Daniel
On réalise qu'une femme est de la dynamite quand on la laisse tomber.
Marcel Pagnol.
Avatar
Dominique Dumont
On Monday, 1 July 2019 21:49:26 CEST Migrec wrote:
Il devrait y avoir une valeur qui est absente et que le script détec te.

Je dois avouer que je ne comprends toujours pas le problème à r ésoudre.
Tu peux donner un exemple d'XML "qui va" et un "qui ne va pas" ?
Dod
Avatar
Migrec
Bonjour,
Merci. Effectivement, je suppose que c'est là pour détecter une absence
de valeur, en tout cas une valeur non exploitable (des espaces, des
retours chariots, etc.)
--
Migrec
Le 02/07/2019 à 12:11, Daniel Caillibaud a écrit :
Le 01/07/19 à 21h49, Migrec a écrit :
Mais j'ai encore du mal à comprendre ce que l'expression cible.

Elle est très large, car elle cible toute chaîne contenant un caractère "non
espace" précédée d'autant de caractères qu'on veut (0 inclus) suivie
d'autant de caractères qu'on veut (idem).
Donc en fait la seule chose qu'elle ne match pas est une chaine ne
contenant aucun caractère "non espace" (ou tabulation ou …), soit une
chaîne vide ou ne contenant que des espaces|tabulations.
(.|n)*[^s](.|n)*
^^^^^^ n'importe quel caractère (fin de ligne compris)
^ en 0 à N exemplaires
^^^^^ un caractère non espace
^^^^^^ n'importe quel caractère (fin de ligne compris)
^ en 0 à N exemplaires
Je vois pas trop dans quel cas ça peut être utile, mais je connais pas le
contexte.