OVH Cloud OVH Cloud

Filtrage sur chaine vide : regex ?

17 réponses
Avatar
a
Bonjour

Je ne connais pas trop la syntaxe de regex (expression rationnelle).
Je cherche le regex permettant d'identifier une chaine vide.
Ceci dans le but de filtrer les messages dont le sujet est blanc (vide).
Je ne souhaite plus recevoir le worm Bagle.U

Subject (regex) drop

10 réponses

1 2
Avatar
Xavier Roche
a wrote:
Je ne connais pas trop la syntaxe de regex (expression rationnelle).
Je cherche le regex permettant d'identifier une chaine vide.


C'est ^$ (chapeau-dollar, le ^ indiquant le début de ligne, le $ la fin)

Avatar
Jacques L'helgoualc'h
Xavier Roche a dit :

a wrote:
Je ne connais pas trop la syntaxe de regex (expression rationnelle).
Je cherche le regex permettant d'identifier une chaine vide.


C'est ^$ (chapeau-dollar, le ^ indiquant le début de ligne, le $ la fin)


Si c'est chez mfilter.free.fr, c'est plutôt $ tout seul (le ^ ne
marche pas comme il devrait).
--
Jacques L'helgoualc'h


Avatar
a
a wrote:

Je ne connais pas trop la syntaxe de regex (expression rationnelle).
Je cherche le regex permettant d'identifier une chaine vide.



C'est ^$ (chapeau-dollar, le ^ indiquant le début de ligne, le $ la fin)




Ca ne fonctionne pas.

Subject .+
est ok pour déterminer que le sujet n'est pas vide (au minimum 1 caractère).
Je cherche la chaine inverse.

J'ai tenté aussi ceci :
!Subject .+
Malheureusement cela ne fonctionne pas.


Avatar
a
a wrote:

Je ne connais pas trop la syntaxe de regex (expression rationnelle).
Je cherche le regex permettant d'identifier une chaine vide.



C'est ^$ (chapeau-dollar, le ^ indiquant le début de ligne, le $ la fin)




Autre question :
Comment tester l'existence du champ Subject ?
Car certains messages ne comportent pas cette ligne.


Avatar
[ Frd ]
"Xavier Roche" a écrit dans le message de
news:409d0f77$0$420$
a wrote:
Je ne connais pas trop la syntaxe de regex (expression rationnelle).
Je cherche le regex permettant d'identifier une chaine vide.


C'est ^$ (chapeau-dollar, le ^ indiquant le début de ligne, le $ la fin)


j'ai fait l'essais dans MailWasher
Si objet contient RegExpr "^$" alors marque le message pour suppression
et ça ne marche pas ....,
tu n'aurais pas une autre idée ? ;o)
Frédéric


Avatar
Olivier Miakinen

C'est ^$ (chapeau-dollar, le ^ indiquant le début de ligne, le $ la fin)


j'ai fait l'essais dans MailWasher
Si objet contient RegExpr "^$" alors marque le message pour suppression
et ça ne marche pas ....,


Peut-être y a-t-il une ou plusieurs espaces dans le sujet ?

tu n'aurais pas une autre idée ? ;o)


Quelques idées en vrac :

test positif sur "^ *$"
(ne contient que des espaces, éventuellement vide)

test positif sur "^[ t]*$"
(ne contient que des espaces ou des tabulations, éventuellement vide)

test négatif sur "[^!-~]"
(ne pas rejeter comme spam s'il contient au moins un caractère ascii,
compris entre le point d'exclamation et le tilde)


Avatar
vero
Promue marginale calée en ordinatique, je décrypte le msg de *[ Frd ]*
<c7q4ev$8rg$ relayé par les serveurs le
11/05/2004

Si objet contient RegExpr "^$" alors marque le message pour suppression
et ça ne marche pas ....,


et si tu mets "^.*$"
.* = n'importe quelle chaine de caractères y compris la chaine vide) ça
donne quoi ? Pas testé moi-même.

--
vero
http://www.web361.com
Unix is user friendly. He's just very picky about who his friends are.

Avatar
Xavier Roche
vero wrote:
et si tu mets "^.*$"


Non, ^.*$ est équivalent à .* (donc "matche" aussi une chaine non vide)
^$ est correct mais il faut peut être trouver la bonne syntaxe pour
cette interface en particulier.

Avatar
vero
Promue marginale calée en ordinatique, je décrypte le msg de *Xavier
Roche*
<c7qq5m$u9u$ relayé par les serveurs le
11/05/2004

Non, ^.*$ est équivalent à .* (donc "matche" aussi une chaine non vide)
^$ est correct mais il faut peut être trouver la bonne syntaxe pour cette
interface en particulier.


Désolée que tu aies lu, je venais de réaliser ma "bêtise" et de
canceller.
mais si on met ^()$ dans la chaîne, n'a-t-on pas là la chaîne vide
requise ? Evidemment, les chaînes non vides (espace, etc.) sont à
filtrer comme l'indique Olivier en complément. Je m'initie tout juste
aux regexp alors merci de me corriger si je dis un truc vraiment
énorme.

--
vero
http://www.web361.com
Unix is user friendly. He's just very picky about who his friends are.

Avatar
vero
Promue marginale calée en ordinatique, je décrypte le msg de *vero*
relayé par les
serveurs le 11/05/2004

mais si on met ^()$ dans la chaîne, n'a-t-on pas là la chaîne vide requise ?


décidemment, pas mon jour... Lire svp :

^char()$

--
vero
http://www.web361.com
Unix is user friendly. He's just very picky about who his friends are.

1 2