Ниже приведен простой пример perl: $ _ должен находиться в диапазоне от 0 до 6, и для каждой итерации строки, содержащие соответствующее число, должны быть извлечены. Однако результат не тот, который я ожидал. Мне сказали, что $_
, вероятно, нужно котировать, поэтому я использовал \Q
и \E
.
use strict;
use warnings;
for (0..6) {
print ("$_: ".(join ", ", (grep /\Q$_\E/, ("12", "123", "00", "0012")))."\n");
}
То, что я ожидал получить:
0: 00, 0012
1: 12, 123, 0012
2: 12, 123, 0012
3: 123
4:
5:
6:
То, что я на самом деле получить:
0: 12, 123, 00, 0012
1: 12, 123, 00, 0012
2: 12, 123, 00, 0012
3: 12, 123, 00, 0012
4: 12, 123, 00, 0012
5: 12, 123, 00, 0012
6: 12, 123, 00, 0012