2016-03-26 2 views

Répondre

0

Utilisez un regex avec un groupe de capture:

$SENTENCE =~ /(\d+) days?/; 
my $days = $1; 
+3

Vous devez vérifier la valeur de retour de l'expression régulière avant de faire confiance à '$ 1'. Ou mieux: 'my ($ days) = $ SENTENCE = ~/(\ d +) jours? /' – TLP

0

Utilisez regex pour capturer le chiffre

my ($day) = $sentence =~ /(\d+)Days?/g; 

Ou bien une autre façon pour le groupe le mot en correspondance de motif à l'aide (?{})

$Sentence =~ /(\d+)Days?(?{my $day = $1})/g: 
0

utilisez la propriété Look-ahead et obtenez votre nombre de jours

my $SENTENCE = "get schwifty for 7 days"; 
($num) = $SENTENCE =~m/(\d+)(?=\s+days?)/; 
print $num;