test d'égalité et expression régulière

Le
Chupin Maxime
Bonjour,

Ma question est vraiment simple, mais je ne trouve la réponse nulle
part :-( (sans doute n'ai-je pas bien cherché).
Je souhaite tester si une chaîne de caractère est un suite de 0 ou
plusieurs espaces. Je sais tester si une chaîne *contient* une suite de
plusieurs espaces ($machaine=~/s*/) mais pas si elle est égale.
J'ai pensé faire $machaine eq "s*", mais cela ne semble pas
fonctionner.

Désolé de poser une question si simple :-).

--
Maxime CHUPIN
http://mc.notezik.com
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Olivier Miakinen
Le #23196511
Bonjour,

Le 11/03/2011 11:19, Chupin Maxime a écrit :

Ma question est vraiment simple, mais je ne trouve la réponse nulle
part :-( (sans doute n'ai-je pas bien cherché).
Je souhaite tester si une chaîne de caractère est un suite de 0 ou
plusieurs espaces. Je sais tester si une chaîne *contient* une suite de
plusieurs espaces ($machaine=~/s*/) mais pas si elle est égale.



Tu peux utiliser les assertions début de chaîne ^ et fin de chaîne $ :

/^s*$/

Cordialement,
--
Olivier Miakinen
Chupin Maxime
Le #23196571
On Fri, 11 Mar 2011 11:25:57 +0100
Olivier Miakinen
Tu peux utiliser les assertions début de chaîne ^ et fin de cha îne $ :

/^s*$/

Cordialement,



Merci !

--
Maxime CHUPIN
http://mc.notezik.com
espie
Le #23196781
In article Chupin Maxime
On Fri, 11 Mar 2011 11:25:57 +0100
Olivier Miakinen
Tu peux utiliser les assertions début de chaîne ^ et fin de chaîne $ :

/^s*$/

Cordialement,



Merci !



Attention aux eventuelles subtilites liees aux fins de ligne.
xavier
Le #23197521
Marc Espie
Attention aux eventuelles subtilites liees aux fins de ligne.



Parce que tu ne commences pas sytématiquement par un chomp() après avoir
lu une ligne.

--
XAv
In your pomp and all your glory you're a poorer man than me,
as you lick the boots of death born out of fear.
(Jethro Tull)
espie
Le #23197511
In article Xavier
Marc Espie
Attention aux eventuelles subtilites liees aux fins de ligne.



Parce que tu ne commences pas sytématiquement par un chomp() après avoir
lu une ligne.



Qui a dit que c'etait une ligne, justement ?
xavier
Le #23197821
Marc Espie
Qui a dit que c'etait une ligne, justement ?



Juste. Mais pas plus tard qu'hier, j'ai eu précisément le problème sur
des chaînes ($ m'attrapait un n qui traînait), et chomp le résoud de la
même façon :-)

--
XAv
In your pomp and all your glory you're a poorer man than me,
as you lick the boots of death born out of fear.
(Jethro Tull)
Stephane CHAZELAS
Le #23197811
2011-03-11, 10:19(+00), Chupin Maxime:
Bonjour,

Ma question est vraiment simple, mais je ne trouve la réponse nulle
part :-( (sans doute n'ai-je pas bien cherché).
Je souhaite tester si une chaîne de caractère est un suite de 0 ou
plusieurs espaces. Je sais tester si une chaîne *contient* une suite de
plusieurs espaces ($machaine=~/s*/) mais pas si elle est égale.
J'ai pensé faire $machaine eq "s*", mais cela ne semble pas
fonctionner.

Désolé de poser une question si simple :-).



La negation est simple:

$machaine !~ /[^ ]/

Note que s comprend SPC, t, r, n, f, (pas v bizarrement)
et possiblement plus en unicode.

--
Stephane
Publicité
Poster une réponse
Anonyme