substr в Пeрле
$а="I know what you did last summer !";
Задача: нужно поменять местами слова "know" и "summer".
Вариант 1:
------------------------------------------
$first=substr($a,2,4); # 'know' > $first
$last=substr($a,-8,6); # 'summer' > $last
substr($a,2,4)=$last; # $last > '..know..'
substr($a,-8,6)=$first; # $first > '..last..'
print $a,"\n";
----------------------------------------------
Выдает результат:
I summer what you did last know !
Вообщем работает как надо.....
Вариант 2:
Я бы хотел, что бы эта кухня работала без дополнительных переменных....
Пробовал следущим образом:
----------------------------------------------
(substr($a,2,4),substr($a,-8,6))=(substr($a,-8,6),substr($a,2,4));
print $a,"\n";
----------------------------------------------
Выдает:
I summer what you did lasknower !
Может кто-нибудь в курсе как это делаеться..........
:???: :???: :???:
попробуй вырезать на один символ больше т.е с пробелом..., а влообще зачем тебе это..?
Зачем мне это надо ?.....Просто таким образом учу спецификацию языка........насколько я знаю Перл забит спецификой до отказа......:) :)
Цитата:
Originally posted by Pennywise
Если вырезать символ, то тогда это неправильно действует на другую часть....вообщем тут фигня....такая что....все зависит от друг друга....Насколько понял..данный способ для такой задачи не подойдет.....останусь при первом варианте.....
Зачем мне это надо ?.....Просто таким образом учу спецификацию языка........насколько я знаю Перл забит спецификой до отказа......:) :)
Если вырезать символ, то тогда это неправильно действует на другую часть....вообщем тут фигня....такая что....все зависит от друг друга....Насколько понял..данный способ для такой задачи не подойдет.....останусь при первом варианте.....
Зачем мне это надо ?.....Просто таким образом учу спецификацию языка........насколько я знаю Перл забит спецификой до отказа......:) :)
Странный способ при первой же проблеме отступать от своей идее(тогда уж лучше книгу почита), почему там абзац, ну или просто приплюсуй к началу, пробел у слово..