Форум программистов, компьютерный форум, киберфорум
Perl
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.78/18: Рейтинг темы: голосов - 18, средняя оценка - 4.78
2 / 2 / 0
Регистрация: 30.08.2013
Сообщений: 26

If($user!~/регул.выражение/) - как объясняется это условие?

02.09.2013, 05:05. Показов 4083. Ответов 31
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Сооздал тему для тупых вопросов! потому как начал изучать перл, и многие вещи мне не понятны.
Вопрос1: if($user!~/регул.выражение/) - как объясняется это условие?
Вопрос2: my $var - как действует эта my для переменных?
Вопрос3: if($db->numrows && !$students ) - как объясняется это условие?
Вопрос4: for(param('pig')) {} -что это за for такой? вроде же цикл но условие не понятно мне.
Вопрос5: есть человек который может помочь разобраться в большом файле что? куда? откуда?

Добавлено через 1 час 14 минут
на Вопрос1: ответ найден!
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
02.09.2013, 05:05
Ответы с готовыми решениями:

Как это объясняется с точки зрения логики предметной области?
Имеется база данных с школьников, с предметами, оценками. Когда задается условие отбора 4 or 5 в поле оценка, соответственно выдает...

Как перевести это математическое выражение в выражение понятное для компилятора?
вот пример: a=5*atan(x)-(1/4)*acos(x); b=(x+3*abs(x-y)+pow(x,2))/(abs(x-y)*z+pow(x,2));

Написать λ -выражение, описывающее условие, которое проверяет список и выдает истину, если выполняется условие
Здравстуйте! Решите, пожалуйста, задачу на Lisp, не понимаю функциональный язык( А лабороторные сдать надо. 1)Необходимо написать λ...

31
 Аватар для bidstrup
419 / 179 / 27
Регистрация: 11.03.2018
Сообщений: 771
14.05.2019, 12:13
Студворк — интернет-сервис помощи студентам
Строго говоря, мой пример выше тоже неудачный, поскольку остаётся непонятным, зачем тут использовать
именно local, а не, например, my. ( и об этом же написал Breetonia )

Вот так уже понятнее зачем

Perl
1
2
3
4
5
6
7
8
our $buf;
 
{ 
  local $/ = undef;
  $buf = readline;
}
 
print $buf;

потому что сказать my $/ = undef нельзя.
0
 Аватар для nullxdth
2305 / 1064 / 77
Регистрация: 12.03.2013
Сообщений: 4,987
14.05.2019, 12:23
Цитата Сообщение от bidstrup Посмотреть сообщение
Вот так уже понятнее зачем
Цитата Сообщение от bidstrup Посмотреть сообщение
потому что сказать my $/ = undef нельзя.
Пример ещё хуже. Это какие-то частные случаи Perl-а, которые не имеют отношение к сути динамического связывания. И никак не дают понять, для чего можно их использовать и как это работает.
0
 Аватар для bidstrup
419 / 179 / 27
Регистрация: 11.03.2018
Сообщений: 771
14.05.2019, 12:32
Цитата Сообщение от nullxdth Посмотреть сообщение
Пример ещё хуже. Это какие-то частные случаи Perl-а
Частные случаи Perl??
Ты не забыл, мы про Perl тут и разговариваем, а не про Lisp.

Цитата Сообщение от nullxdth Посмотреть сообщение
. И никак не дают понять, для чего можно их использовать и как это работает.
Всё с точностью до наоборот.
Я показал классический способ использования local по отношению к глобальной переменной $/,
которую пользует библиотечная функция readline. По выходу из лексической области видимости
$/ восстанавливается. И my тут использовать не получится.
0
 Аватар для nullxdth
2305 / 1064 / 77
Регистрация: 12.03.2013
Сообщений: 4,987
14.05.2019, 12:37
Цитата Сообщение от bidstrup Посмотреть сообщение
Частные случаи Perl??
Именно.
Цитата Сообщение от bidstrup Посмотреть сообщение
Ты не забыл, мы про Perl тут и разговариваем, а не про Lisp.
Я тут про динамические связывания говорил, а это общая концепция.
Цитата Сообщение от bidstrup Посмотреть сообщение
Всё с точностью до наоборот.
Я показал классический способ использовани
Из разряда: my воткнуть не получается, давайте воткнём local, авось заработает Вся суть Perl фанбоев - им не нужна суть вещей и как использовать те или иные вещи. Только хаки, только бы сделать абы как
Поэтому и говорю:
Цитата Сообщение от nullxdth Посмотреть сообщение
Dynamic scoping в Perl пришёл из Lisp, но в отличие от последнего редко используется perl-кодерами (вероятно, ввиду низкой образованности основной массы perl-овиков).
0
 Аватар для bidstrup
419 / 179 / 27
Регистрация: 11.03.2018
Сообщений: 771
14.05.2019, 12:49
nullxdth, жёлтые кружочки, 'пафос', 'фанбоев' и прочие обобщения оставь, pls, для своих экзерсисов в 'Священных войнах'. Здесь же ты пока абсолютно не справляешься с темой и приводишь неудачные ( по твоему же собственному признанию ) примеры использования local.
0
 Аватар для nullxdth
2305 / 1064 / 77
Регистрация: 12.03.2013
Сообщений: 4,987
14.05.2019, 12:57
Цитата Сообщение от bidstrup Посмотреть сообщение
Здесь же ты пока абсолютно не справляешься с темой и приводишь неудачные ( по твоему же собственному признанию ) примеры использования local.
Ну куда уж мне до твоих-то примеров Ты вместо того, чтоб бесполезно возмущаться, книги почитай - скилл подтяни. А то так и останешься на уровне "классических способов использования в Perl"
0
 Аватар для bidstrup
419 / 179 / 27
Регистрация: 11.03.2018
Сообщений: 771
14.05.2019, 13:07
Так покажи свой подтянутый 'скилл'. Приведи адекватный 'скиллу' пример.

И можешь не спешить, подумай, полистай те же книги. Я до пятницы совершенно свободен.
0
 Аватар для nullxdth
2305 / 1064 / 77
Регистрация: 12.03.2013
Сообщений: 4,987
14.05.2019, 13:11
Цитата Сообщение от bidstrup Посмотреть сообщение
Так покажи свой подтянутый 'скилл'. Приведи адекватный 'скиллу' пример.
Зачем бы мне это нужно было? Я вон элементарный пример с map-ом написал, так ведь ты и его не понял.
0
 Аватар для bidstrup
419 / 179 / 27
Регистрация: 11.03.2018
Сообщений: 771
14.05.2019, 13:18
Элементарный пример с map-ом ты сам признал неудачным.

Добавлено через 4 минуты
"Я вон элементарный пример с map-ом написал, так ведь ты и его не понял"

Навеяло:
Н.НосовС тех пор Незнайка перестал играть на трубе.
— Моей музыки не понимают, — говорил он. — Ещё не доросли до моей музыки.
0
 Аватар для nullxdth
2305 / 1064 / 77
Регистрация: 12.03.2013
Сообщений: 4,987
14.05.2019, 14:43
Цитата Сообщение от bidstrup Посмотреть сообщение
Элементарный пример с map-ом ты сам признал неудачным.
Он неудачен исключительно лишь по причине, что связывание $arg не имеет на практике смысла, для единственного аргумента используется $_. Ну и map есть в стандартной библиотеке.
Вот более удачный и идиоматичный пример использования динамический связываний с т.з. Perl:
Perl
1
2
3
4
5
6
7
8
9
10
11
12
13
sub fold(&$@) {
 
    my ($fn, $x, @xs) = @_;
    my ($y, @ys) = @xs;
 
    local $a = @ys ? fold($fn, $x, @ys) : $x;
    local $b = $y;
 
    $fn->($a, $b);
};
 
# fold {$a + $b} 0, (1..3)  ==  fold {$_[0] + $_[1]} 0, (1..3)
# fold {$a * $b} 1, (1..3)  ==  fold {$_[0] + $_[1]] 1, (1..3)
Ну что толку касательно тебя. Ты не понял тот пример - не поймёшь и этот. Ну может кто читать будет компетентнее - будет полезно.
0
 Аватар для bidstrup
419 / 179 / 27
Регистрация: 11.03.2018
Сообщений: 771
14.05.2019, 19:30
Цитата Сообщение от nullxdth Посмотреть сообщение
Ну что толку касательно тебя. Ты не понял тот пример - не поймёшь и этот.
Попробуй вспомнить, что я тебе рассказывал про привычку священно воевать.

Теперь по вновь приведённому коду:
Убираем local

Perl
1
2
3
4
5
6
7
8
9
10
11
12
13
sub fold(&$@) {
 
    my ($fn, $x, @xs) = @_;
    my ($y, @ys) = @xs;
 
    $a = @ys ? fold($fn, $x, @ys) : $x;
    $b = $y;
 
    $fn->($a, $b);
};
 
# fold {$a + $b} 0, (1..3)  ==  fold {$_[0] + $_[1]} 0, (1..3)
# fold {$a * $b} 1, (1..3)  ==  fold {$_[0] + $_[1]] 1, (1..3)
И получаем тот же результат. Что понятно. Точнее, мне понятно.
А почему тебе непонятно?

Переменные $a и $b изменили своё значение ? Ясен пень, изменили.

И если обьявить их с помощью local, то они первоначальное значение, ясен пень, восстановят.
Но чтобы продемонстрировать данный эффект достаточно простого примера, который я уже приводил
Perl
1
2
3
4
$a =1; $b = 2;
{ local ($a,$b) = 100,200; }  
 
print "$a $b";
Output: 1 2
0
 Аватар для nullxdth
2305 / 1064 / 77
Регистрация: 12.03.2013
Сообщений: 4,987
14.05.2019, 19:50
Цитата Сообщение от bidstrup Посмотреть сообщение
Но чтобы продемонстрировать данный эффект
С эффектом мы вроде разобрались в предыдущих постах. Ты же ныл привести хороший пример использования. Я - привёл.

Добавлено через 2 минуты
Цитата Сообщение от bidstrup Посмотреть сообщение
И получаем тот же результат.
Действительно! В первом случае с динамическими связываниями написан безопасный код без side effect-ов. Во втором случае петушатся значения глобальных переменных $a и $b. Никакой разницы!
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
14.05.2019, 19:50

Как записать это условие
•Столбец «Стоимость» вычисляется по условию: от 1 до 10 суток – 100% стоимости, от 11 до 20 суток –80% стоимости, а более 20 – 60% общей...

Как упростить это выражение?
Как упростить выражение, я нашел общее кратное дробей и привел их к одному знаменателю, а как дальше?

Как записатьь это выражение на с++?

Как вычисляется это выражение?
Я только начала изучать js и у меня появился вопрос. var a = 1, b = 1, c, d; c = ++a; alert(c); // 2 d = b++; alert(d); // 1 ...

Как прочитать это выражение?
помогите пожалуйста разобраться. (f(x))(y)


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
32
Ответ Создать тему
Новые блоги и статьи
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru