#!/usr/bin/perl    
use strict;    
use warnings;

print "Saisir un texte\n";
my $v = <STDIN>;
chomp $v;

# Vérifier que $v comporte oui.
if( $v =~ /oui/ ) { print "motif 1 OK: ", $v, "\n"; }


# Vérifier que $v finit par une lettre majuscule.
if( $v =~ /[A-Z]$/ ) { print "motif 2 OK: ", $v, "\n"; }


# Vérifier que $v comporte deux 1, ou deux 2, ou deux 3, consécutifs. 
if( $v =~ /(11|22|33)/ ) { print "motif 3 OK: ", $v, "\n"; }


# Extraire de $v chacun des deux premiers caractères.
my ($c1, $c2) = ( $v =~ /^(.)(.)/ );
print "deux premiers caractères: ", $c1, $c2, "\n";


# Extraire de $v les deux premiers mots.
my ($s1, $s2) = ( $v =~ /^\W*(\w+)\W+(\w+)/ );
print "deux premiers mots: ", $s1, " ", $s2, "\n";


# Extraire de $v le dernier caractère non-numérique.
my ($c) = ( $v =~ /(\D)\d*$/ );
print "dernier caractère non-numérique: ", $c, "\n";

    
# Remplacer dans $v oui par non.
$v =~ s/oui/non/;
print "nouveau texte: ", $v,  "\n";


# Supprimer de $v les espaces en fin de chaîne.
$v =~ s/ +$//;
print "suppression des espaces à la fin: ", $v,  "\n";


