I want to use Perl’s sprintf to zerofill a variable.
sprintf("%08d", $var);
But I want to dynamically determine how many digits to zerofill.
How do I replace the “8” in sprintf("%08d", $var) with a variable called $zerofill?
Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.
Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.
Lost your password? Please enter your email address. You will receive a link and will create a new password via email.
Please briefly explain why you feel this question should be reported.
Please briefly explain why you feel this answer should be reported.
Please briefly explain why you feel this user should be reported.
The first argument to sprintf is just a string:
Notice the braces to set apart the variable name from the rest of the string.
We have this particular problem as a slightly clever exercise in Learning Perl to remind people that strings are just strings. 🙂
However, as mobrule points out in his answer, sprintf has many features to give you this sort of flexibility. The documentation for such a seemingly simple function is quite long and there are a lot of goodies in it.