Perl & String

Résolu
vindicien Messages postés 131 Date d'inscription   Statut Membre Dernière intervention   -  
vindicien Messages postés 131 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous,

J'aimerai savoir si il existe une fonction en Perl permettant de réaliser l'équivalent d'un "like" en SQL.

Concrètement :

if (ma_valeur LIKE %TRUC%)
{
print "ca roule";
}

Pour l'instant j'utilise des sed mais je pense qu'il y a plus simple non ?

1 réponse

lami20j
 
Salut,

Les regex sont implémentées en perl et l'opérateur est m//, tu n'est pas obligé d'utiliser m/
/TRUC/ cherche dans une chaîne de caractères T suivi de R suivi U suivi de C
C'est plus puisant que like, puisque tu peux encrer la recherche, tu peux utiliser de quantificateurs, des captures, des références arrière, des test avant/arrière positif et négatif, etc.

Une exemple

lami20j@debian:~/trash/AB$ cat truc.pl
#!/usr/bin/perl
use strict;use warnings;
my $val="il y a pas mal des TRUC en sed, awk, Perl, Python, etc\n";

if ($val=~/TRUC/){
  print "Ca roule\n";
}
__END__

lami20j@debian:~/trash/AB$ perl truc.pl
Ca roule
0
vindicien Messages postés 131 Date d'inscription   Statut Membre Dernière intervention   33
 
Yes merci beaucoup l'ami !!! Je m'en suis sorti nikel grâce à ton aide !!!
Bonne journée et joyeuses fêtes de fin d'année !!!
0