所以我回答了一个关于SO的问题,并为此得到了很多抨击.我已经使用Perl很多年了,并且非常多地使用这个主题.
所以让我们从一些代码开始吧.我在这些例子中进行搜索和替换.我们的想法是搜索one和three从两个字符串中搜索并替换它们.
$values = 'one two three four five';
$value2 = 'one 2 three four 5';
$values =~ s/one//g;
$values =~ s/three//g;
$values2 =~ s/one//g;
$values2 =~ s/three//g;
Run Code Online (Sandbox Code Playgroud)
这段代码很简单,每个人都接受它.
我还可以构建一个数组或散列,其中包含要搜索和替换的值列表,这也是可以接受的.
但是,当我构建一个脚本来进行话题化$values并$values2减少构建脚本的键入量时,它似乎被误解了?
这是代码.
$values = 'one two three four five';
$value2 = 'one 2 three four 5';
for ( $values, $values2 ) {
s/one//g;
s/three//g;
}
Run Code Online (Sandbox Code Playgroud)
上面的代码将讨论for块的持续时间的变量,但许多程序员反对这一点.我想明白为什么这是不可接受的?