J'ai une chaîne comme ceci:découpant une chaîne en jetons et le stockage des délimiteurs en Perl
a b c d
Je traiter ma chaîne comme ceci:
chomp $line;
my @tokens = split /\s+/, $line;
my @new_tokens;
foreach my $token (@tokens) {
push @new_tokens, some_complex_function($token);
}
my $new_str = join ' ', @tokens;
J'aimerais adhérer à nouveau la chaîne avec l'espace d'origine. Y a-t-il un moyen de stocker les espaces et de les réutiliser plus tard? Ou est-ce que ça va être une énorme douleur? C'est principalement cosmétique, mais je voudrais préserver les espaces d'origine de la chaîne d'entrée.
Cela peut diviser par mégarde sur des choses qui ne sont pas des frontières blancs. –
Merci de le signaler! J'ai écrit la réponse originale sans penser à '\ w' vs' \ s'. Edité ma réponse en conséquence. – hillu