Работая с контентом небольшая задачка огранизовалась — в файле с таблицей ссылки вида «//» нужно пронумеровать по порядку
«/1/»
«/2/»
«/3/»
и т.д.
и всего таких строк около 150 штук!
Собственно, сваял небольшой скриптик на основе preg-replace-callback позволяющий делать подобную замену
1 2 3 4 5 6 7 |
$file = $argv[1]; if(!$file) exit(); $count = 1; $pattern = ‘!\/\/!’; $text = file_get_contents($file); $text = preg_replace_callback( $pattern , function($match) use (&$count) { $str = «/$count/»; $count++; return $str; } , $text ); echo $text; |
запускаю с командной строки таким образом
php numerator.php infile.php > outfile.php
Доработка — вариант с именованием c дополненными нулями в виде ./001/ ./002/ и т.д.
1 2 3 4 5 6 7 8 9 10 11 12 |
<? $file = $argv[1]; if(!$file) exit(); $count = 0; $pattern = ‘!\/\/!’; $text = file_get_contents($file); $text = preg_replace_callback( $pattern , function($match) use (&$count) { $str = «/$count/»; $count++; return «./».str_pad($count, 3, «0», STR_PAD_LEFT).«/»; } , $text ); echo $text; |