Вопросы с тегом «perl»

Perl - это процедурный высокоуровневый динамический язык программирования общего назначения, известный своей собственной поддержкой регулярных выражений и возможностей синтаксического анализа строк. Пожалуйста, используйте этот тег для вопросов о Perl в целом. Для вещей, связанных с новым (но связанным) языком Raku (ранее «Perl 6»), пожалуйста, используйте тег raku. Для регулярных выражений в стиле Perl на других языках используйте тег regex или, если они основаны на библиотеке PCRE, тег pcre.

2
В чем разница между файлами .pm (модуль Perl) и .pl (сценарий Perl) в Perl?
В чем разница между .pm(модулем Perl) и .plфайлом (скриптом Perl)? Скажите, пожалуйста, почему мы возвращаемся 1из файла. Если возвращается 2 или что-то еще, это не вызывает ошибок, так почему же мы возвращаемся 1из модуля Perl?
88 perl  perl-module 

15
Как эффективно рассчитать текущее стандартное отклонение?
У меня есть массив списков чисел, например: [0] (0.01, 0.01, 0.02, 0.04, 0.03) [1] (0.00, 0.02, 0.02, 0.03, 0.02) [2] (0.01, 0.02, 0.02, 0.03, 0.02) ... [n] (0.01, 0.00, 0.01, 0.05, 0.03) Я хотел бы эффективно вычислить среднее значение и стандартное отклонение по каждому индексу списка по всем элементам массива. …

6
Использование 'use 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-скрипте. Почему это …
86 perl  unicode  utf-8 

5
Сборка Perl, модульное тестирование, покрытие кода: полный рабочий пример
Большинство ответов Stackoverflow, которые я нашел в отношении процесса сборки Perl, модульного тестирования и покрытия кода, просто указывают мне на CPAN за документацией. Нет ничего плохого в том, чтобы указывать на модули CPAN, потому что там должна находиться вся документация. Однако во многих случаях у меня были проблемы с поиском …

9
Как я могу преобразовать строку в число в Perl?
У меня есть строка, содержащая десятичное значение, и мне нужно преобразовать эту строку в переменную с плавающей запятой. Итак, у меня есть пример строки «5.45», и мне нужен эквивалент с плавающей запятой, чтобы я мог добавить к нему .1. Я искал в Интернете, но вижу только, как преобразовать строку в …

1
Почему я не получаю синтаксических ошибок при выполнении сценария Python с Perl?
Я просто написал тестовый код на Python test.pyи запускаю его следующим образом: perl test.py Через некоторое время я осознал свою ошибку. Я говорю «через некоторое время», потому что код Python действительно выполняется правильно, как в интерпретаторе Python! Почему мой Perl интерпретирует мой Python? test.pyвыглядит так: #!/usr/bin/python ...Python code here... Интересно, …
85 python  perl 

4
Как пронумеровываются вложенные группы захвата в регулярных выражениях?
Существует ли определенное поведение для того, как регулярные выражения должны обрабатывать захват вложенных круглых скобок? Более конкретно, можете ли вы разумно ожидать, что разные движки будут фиксировать внешние скобки в первой позиции и вложенные скобки в последующих позициях? Рассмотрим следующий код PHP (с использованием регулярных выражений PCRE) <?php $test_string = …

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


1
Признающая сила «современных» регулярных выражений
Какой класс языков действительно распознают настоящие современные регулярные выражения? Всякий раз, когда есть группа захвата неограниченной длины с обратной ссылкой (например (.*)_\1), регулярное выражение теперь соответствует нерегулярному языку. Но S ::= '(' S ')' | εодного этого недостаточно, чтобы сопоставить что-то вроде - контекстно-свободный язык сопоставления пар пар пар символов. …

9
Как в Perl кратко проверить, определена ли переменная $ и содержит ли она строку ненулевой длины?
В настоящее время я использую следующий Perl, чтобы проверить, определена ли переменная и содержит ли она текст. Я должен definedсначала проверить, чтобы избежать предупреждения о неинициализированном значении: if (defined $name && length $name > 0) { # do something with $name } Есть ли лучший (предположительно более лаконичный) способ написать …
83 perl  string 

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

2
Что означает синтаксис << 'm' = ~ m >> в perl?
Итак, я понимаю, что у perl много необычного синтаксиса, но на днях я наткнулся на фрагмент кода на работе, который меня смутил. Может кто-нибудь объяснить мне, что это значит: &lt;&lt;'m'=~m&gt;&gt; print $a unless $b; return; m ; Это похоже на синтаксис HEREDOC, но не в той форме, которую я когда-либо …
82 perl 


7
Перезаписать функцию, определенную в модуле, но перед тем, как использовать ее на этапе выполнения?
Давайте возьмем что-то очень простое, # Foo.pm package Foo { my $baz = bar(); sub bar { 42 }; ## Overwrite this print $baz; ## Before this is executed } Могу ли я в любом случае test.plзапустить код, который изменяет то, что $bazустановлено, и заставляет Foo.pmпечатать что-то еще на экране? …
20 perl  compilation 

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.