in reply to Re^2: substitution with regex
in thread substitution with regex
Hello drose2211,
The sprintf function applies the formatting specified in the template supplied as its first argument, to produce a string using the remaining arguments. In this case, the template ' %d/%d ' means: print a space, followed by the next argument formatted as an integer, followed by a slash, followed by the next argument formatted as an integer, followed by a space. Without the sprintf function, the code would be longer and less elegant:
$line =~ s{ \s (M?\d{2}) / (M?\d{2}) \s } { ' ' . int(convert($1)) . '/' . int(convert($2)) . ' ' }xeg +;
(Perl’s printf and sprintf functions are derived from their equivalents in C. In Perl, there is also print, which does not take a template, but there is no corresponding sprint.)
Hope that helps,
| Athanasius <°(((>< contra mundum | Iustus alius egestas vitae, eros Piratica, |
|
|---|