J'ai un tableau comme celui-ciL'opérateur de substitution Per Perl peut-il faire correspondre un élément dans un tableau?
my @stopWords = ("and","this",....)
Mon texte est dans cette variable
my $wholeText = "....and so this is...."
Je veux faire correspondre chaque occurrence de chaque élément de mon tableau des mots vides dans le scalaire wholeText et de le remplacer par des espaces .
Une façon de faire est la suivante:
foreach my $stopW (@stopWords)
{
$wholeText =~ s/$stopW/ /;
}
Cela fonctionne et remplace toutes les occurrences de tous les mots d'arrêt. Je me demandais simplement s'il y avait une façon plus courte de le faire.
Comme ceci:
$wholeText =~ s/@stopWords/ /;
Ce qui précède semble pas fonctionner bien.
Cela supprime le 'et' dans 'mille'. –
@Jonathan Leffler: merci de m'avoir signalé, mais je pense que OP ne s'occupe pas non plus de ce cas. :) –
L'OP veut probablement le traiter; il veut probablement supprimer toutes les occurrences de chaque mot d'arrêt (isolément), pas seulement la première occurrence de chaque mot. Une solution complète le fait tout à la fois. –