perl- все статьи тега ➜ страница 3


Как узнать, имеет ли переменная числовое значение в Perl?

есть простой способ в Perl, который позволит мне определить, является ли данная переменная числом? Что-то вроде: if (is_number($x)) { ... } было бы идеально. Техника, которая не будет бросать предупреждения, когда -w переключатель используется, безусловно, предпочтительнее. ...

Каков наилучший способ удалить значение из массива в Perl?

массив имеет много данных, и мне нужно удалить два элемента. Ниже приведен фрагмент кода, который я использую, my @array = (1,2,3,4,5,5,6,5,4,9); my $element_omitted = 5; @array = grep { $_ != $element_omitted } @array; ...

Как включить автоматические складки в Vim?

Как включить автоматическое складывание в Vim? set foldmethod=syntax кажется,ничего не делает. ...

Использование использовать utf8;' дает мне 'широкий характер в печати

если я запускаю следующую программу Perl: perl -e 'use utf8; print "鸡n";' Я получаю это предупреждение: Wide character in print at -e line 1. если я запускаю эту программу Perl: perl -e 'print "鸡n";' Я не получаю предупреждение. Я думал use utf8 требуется использовать символы UTF-8 в скрипте Perl. Почему это не работает и как я могу это исправить? Я использую Perl 5.16.2. У меня такая же проблема, если это в файле, а не один лайнер в командной строке. ...

Переменные Nginx, подобные SetEnv в Apache?

Я использую SetEnv в Apache для установки некоторых переменных в virtualhosts, которые я восстанавливаю в PHP с помощью $_SERVER[the_variable]. теперь я переключаюсь на Perl Catalyst и Nginx, но кажется, что директива "env" в Nginx не то же самое. Это не работает. Как это может быть достигнуто? вот фоновое изображение, на всякий случай кто-то может предложить лучший подход или моя предыдущая система не работает с Nginx. я использую одно и то же приложение для многих доменов. Все данные посту ...

автоматически получить индекс цикла в цикле foreach в perl

если у меня есть следующий массив в Perl: @x = qw(a b c); и я повторяю его с foreach, потом $_ будет ссылаться на текущий элемент в массиве: foreach (@x) { print; } выведет: abc есть ли аналогичный способ получить индекс текущего элемента, без ручного обновления счетчика? Что-то вроде: foreach (@x) { print $index; } здесь $index обновляется как $_ выход вывод: 012 ...

Зачем изучать Perl, Python, Ruby, если компания использует C++, C# или Java в качестве языка приложения? [закрытый]

интересно, почему разработчик C++, C#, Java хочет изучать динамический язык? предполагая, что компания не переключит свой основной язык разработки С C++ / C# / Java на динамический, какой смысл использовать динамический язык? какие вспомогательные задачи могут быть выполнены динамическими языками быстрее или лучше всего через несколько дней обучения, чем с помощью статического языка, который вы используете в течение нескольких лет? обновление после просмотра первые несколько ответов ясно, чт ...

Как извлечь строку по шаблону с помощью GREP, REGEX или PERL

У меня есть файл, который выглядит примерно так: <table name="content_analyzer" primary-key="id"> <type="global" /> </table> <table name="content_analyzer2" primary-key="id"> <type="global" /> </table> <table name="content_analyzer_items" primary-key="id"> <type="global" /> </table> Мне нужно извлечь что-нибудь в кавычках, которые следуют за "name=", т. е. content_analyzer , content_analyzer2 и content_analyzer_items. Я делаю это на ...

Как включить функции из другого файла в мой скрипт на Perl?

это кажется очень простым вопросом, но почему-то мой Google-Fu подвел меня. каков синтаксис для включения функций из других файлов в Perl? Я ищу что-то вроде C #include "blah.h" Я видел вариант использования модулей Perl, но похоже, что для этого потребуется не незначительная переписать мой текущий код. ...

Что означает "0, но true" в Perl?

может кто-нибудь объяснить, что именно строка "0 но true" означает в Perl? Насколько я понимаю, он равен нулю в целочисленном сравнении, но оценивается как true при использовании в качестве булева. Это правильно? Это нормальное поведение языка или это специальная строка рассматривается как особый случай в переводчик? ...

Как я могу деинсталлировать модуль Perl, установленный через "cpan"?

Я использую Perl, работающий в пользовательском пространстве (не установлен через root) и устанавливающий модули через командную строку cpan. Я хотел бы знать, есть ли простой способ удалить модуль без необходимости выполнять много работы по удалению отдельных файлов. Я искал этот вопрос в интернете и нашел некоторые ответы, но ответы, которые я нашел, похоже, либо обсуждают использование диспетчера пакетов Perl (специфичного для Microsoft Windows), либо операционной системы (BSDpan), предлагая ...

Perl читается строка за строкой

У меня есть простой скрипт Perl для чтения файла строка за строкой. Код приведен ниже. Я хочу отобразить две строки и разорвать цикл. Но это не работает. Где ошибка? $file='SnPmaster.txt'; open(INFO, $file) or die("Could not open file."); $count = 0; foreach $line (<INFO>) { print $line; if ($++counter == 2){ last; } } close(INFO); ...

Как я могу получить список стека вызовов в Perl?

есть ли способ получить доступ (для распечатки) к списку sub + модуля к произвольной глубине подзвонков, предшествующих текущей позиции в скрипте Perl? Мне нужно внести изменения в некоторые модули Perl (. pm). рабочий процесс инициируется с веб-страницы через CGI-скрипт, передавая ввод через несколько модулей / объектов, заканчивающихся в модуле, где мне нужно использовать данные. Где-то по ходу дела данные изменились, и мне нужно выяснить, где. ...

Как вы захватываете stderr, stdout и код выхода сразу, в Perl?

можно ли запустить внешний процесс из Perl, захватить его stderr, stdout и код выхода процесса? кажется, я могу делать комбинации из них, например, использовать обратные палочки для получения stdout, IPC::Open3 для захвата выходов и system() для получения кодов выхода. Как вы захватить stderr, stdout и код выхода все сразу? ...

В чем разница между хэшем и хэш-ссылкой в Perl?

Я хотел бы правильно понять хэши в Perl. Мне приходилось использовать Perl периодически в течение довольно долгого времени и в основном всякий раз, когда мне это нужно, это в основном связано с обработкой текста. и каждый раз, когда мне приходится иметь дело с хэшами, он запутывается. Я нахожу синтаксис очень загадочным для хэшей хорошее объяснение хэшей и хэш-ссылок, их различий, когда они требуются и т. д. был бы очень признателен. ...

Что означает $1 в Perl?

Что означает $1 в Perl? Далее, что означает $2? Сколько существует переменных $number? ...

Как я могу обнаружить операционную систему в Perl?

У меня есть Perl на Mac, Windows и Ubuntu. Как я могу сказать из сценария, какой из них какой? Спасибо заранее. Edit: меня спросили, что я делаю. Это скрипт, часть нашей кроссплатформенной системы сборки. Сценарий повторяется в каталогах и выяснит, какие файлы, чтобы построить. Некоторые файлы зависят от платформы, и поэтому в Linux я не хочу создавать файлы, заканчивающиеся на _win.cpp, etc. ...

Как узнать, какой тип значения находится в переменной Perl?

Как я могу сказать, какой тип значения переменной на Perl? $x может быть скаляром, ссылка на массив или ссылка на хэш (или, возможно, другие вещи). ...

grep-P больше не работает как я могу переписать мои поиски

похоже, что новая версия OSX больше не поддерживает grep-P и поэтому некоторые из моих скриптов перестали работать. var1=`grep -o -P '(?<=<st:italic>).*(?=</italic>)' file.txt` мне нужно захватить grep в переменную, и мне нужно использовать утверждения нулевой ширины. а также K var2=`grep -P -o '(property:)K.*d+(?=end)' file.txt` любые альтернативы были бы весьма признательны. ...