我坚持使用XML元素的生成ID(如果它们也没有定义)。 案子: 有几个XML文档具有相同的结构。我应该找到所有“表格”元素,并在其中添加ID,例如“section-table-XXXX”那里有“XXXX” - 从0001开始自动生成的数字,并且对于找到的每个“表格”增加。 最好的方法是使用Perl,但我不太了解Perl使用它。 请帮忙。 非常感谢!
答案 0 :(得分:0)
保留一个柜台
$i = 0;
每次找到一个表(在for或while循环中)都执行增量步骤并使用它来声明表的名称。
$i++;
$table_name = "section-table-$i"
要获得您的4位数ID,请使用sprintf。 http://perldoc.perl.org/functions/sprintf.html
$i++;
$table_id = sprintf<%04s> ,11;
$table_name = "section-table-$table_id";
请注意双引号。
printf用于打印由给定模式格式化的字符串 sprintf返回打印的字符串而不是打印出来
sprintf和printf非常有用。你应该检查一下。 (虽然perldoc很复杂而且凌乱)
%04s表示返回一个基于长度为4个字符的字符串,并将其填充为0作为默认值。
另一个例子:
perl -e '$x = "world"; $z=sprintf<"hello\t%s">, $x; print $z'
将打印“hello \ tworld”
玩转。它真的很有用。 如果您需要更多帮助,请告诉我
干杯