note
McDarren
As has been pointed out, you can use <c>$'</c>.<br>
Although, this is best avoided if possible. And in this case it is certainly possible to avoid it by making use of capturing parentheses in your pattern match.
<p>Here is a small snippet of code that demonstrates how this might be done:
<code>
#!/usr/bin/perl
use strict;
use warnings;
my $wanted = 'coucou';
while (my $line = <DATA>) {
chomp($line);
my $rest = '';
if ($line =~ m/$wanted(.*)$/) {
$rest = $1;
print "$wanted:$rest\n";
}
else {
print "$wanted not found in $line\n";
}
}
__DATA__
abc coucou def
not in this line
in this line, but nothing following coucou
coucou once, coucou twice, coucou three times - what should be done with this line?
</code>
<p>One thing you didn't specify in your question is what should happen if the string is found more than once in any line. The example above assumes that you would want everything after the <em>first</em> match.
<p>If you wanted instead, everything after the <em>last</em> match, then you could achieve this by inserting a "greedy" dot-star at the beginning of the pattern match, like so:
<code>
m/.*$wanted(.*)$/
</code>
<p>Cheers,<br>
Darren
670565
670565