powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Perl, работа с регулярными выражениями
5 сообщений из 5, страница 1 из 1
Perl, работа с регулярными выражениями
    #37908651
publexus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как в Perl получить результат регулярного выражения не меняя самой переменной в которой находится обрабатываемый текст?

Например, сейчас я делаю так:
Код: php
1.
2.
3.
4.
my $src = "Apple, grape";

my $result = $src;
$result =~ s/Apple/Orange/g;



А можно ли сразу присвоить переменной $result результат, при этом не меняя $src?
Типа нерабочего варианта:
Код: php
1.
my $result = ($src =~ s/Apple/Orange/g);
...
Рейтинг: 0 / 0
Perl, работа с регулярными выражениями
    #37909093
Anjey aka PM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Скобки, как я понимаю, расставить по другому уже не догадались.

Код: php
1.
(my $result = $src) =~ s/Apple/Orange/g;
...
Рейтинг: 0 / 0
Perl, работа с регулярными выражениями
    #37909314
publexus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anjey aka PM,

А как не присвоить, а именно получить результат? Например когда его нужно использовать в выражении, типа:
Код: php
1.
print "Modified string=".($src =~ s/Apple/Orange/g);
...
Рейтинг: 0 / 0
Perl, работа с регулярными выражениями
    #37909325
Anjey aka PM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
In perl 5.14.0 or later, you can use the new /r non-destructive substitution modifier:

Код: php
1.
my $new = $old =~ s/foo/bar/r; 



Есть 5.14 ? Если нету, то без бубна никак.

Код: php
1.
print "Modified string=".($src =~ s/Apple/Orange/gr);
...
Рейтинг: 0 / 0
Perl, работа с регулярными выражениями
    #37909942
publexus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anjey aka PM,

Да, у меня 5.14.2.

Спасибо за помощь.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Perl, работа с регулярными выражениями
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]