$_ =~ s/\#N\/A//g;
это замена \ 3N \ с помощью A \ эти специальные символы в perl? Извините, я даже не знаю, как искать этот синтаксис.Что это за замена?
$_ =~ s/\#N\/A//g;
это замена \ 3N \ с помощью A \ эти специальные символы в perl? Извините, я даже не знаю, как искать этот синтаксис.Что это за замена?
Удаляет # N/A из строки $_
.
\#N
матчи #N
(спасаясь от #
)
\/A
спичек /A
(Ускользающий /
)
Вы можете упростить как запутанным это выглядит, изменив заместительную разделитель:
$_ =~ s|#N/A||g;
Like Hunter McMillen сказал: он удаляет #N/A
из переменной по умолчанию.
Но вы можете написать что-то более удобным для чтения и короче:
s!#N/A!!g;
Как уже упоминалось @Hunter McMillen, это просто нормальное регулярное выражение замещения со специальными символами убежали. Это, вероятно, лучше записать как
s|#N/A||g
или
s{#N/A}{}g
В Дамиана Конвея Perl Best Practices, чтобы сделать регулярные выражения более читаемым, он рекомендует:
s{ \# N \/ A }{}gmsx;
То есть:
Это регулярное выражение perl. Попробуйте http://perldoc.perl.org/perlre.html для получения дополнительной информации о регулярных выражениях perl. Кроме того, google «perl operator = ~» может дать вам некоторые подсказки. –
@MichaelKohne, Google молча игнорирует часть '= ~'. – doubleDown
@doubleDown - Интересно. Не знаю, почему я получил перл как мой первый удар раньше. Теперь я получаю perlop, который сообщает, что такое оператор = ~, и ссылки perlre. Так оно работает в любом случае. –