@phpgeeks

Страница 629 из 8430
F01134H
18.08.2016
21:16:55
Ладно, шутка не удалась, без обид если что)

Sergey
18.08.2016
21:17:21
да всё в порядке

не могу придумать, сука, признак остановки

? BoobkaGop ?
18.08.2016
21:18:17
А большой выбор что ли

Google
? BoobkaGop ?
18.08.2016
21:19:18
Длина строки, содержимое строки, номер итерации

F01134H
18.08.2016
21:20:07
а что ты делаешь, если не секрет?

Sergey
18.08.2016
21:20:19
Тестовое задание )

выдали мне

? BoobkaGop ?
18.08.2016
21:20:22
Ебет нам голову)

F01134H
18.08.2016
21:20:29
?

Sergey
18.08.2016
21:20:37
ну можем про порно с наркотиками поговорить

F01134H
18.08.2016
21:20:50
не не)

Виктор
18.08.2016
21:22:04
0_o

F01134H
18.08.2016
21:22:32
т.е. тебе нужно установить фиксированное количество итераций?

Sergey
18.08.2016
21:22:44
мне нужно понять когда пора бы остановиться )

когда я уже занимаюсь не заменами

F01134H
18.08.2016
21:23:02
а какая причина для этой остановки

Google
Sergey
18.08.2016
21:23:04
а попал в бесконечную рекурсию

Ты запусти код

хоть в консоли

сразу станет ясно

а то я, видимо, как-то плохо объясняю

F01134H
18.08.2016
21:23:50
ну, в смысле, программа сама должна решить, сколько тебе нужно повторений aaaa1111?

я уже посмотрел и понял, про что ты

Sergey
18.08.2016
21:24:01
ага

F01134H
18.08.2016
21:24:14
но для этого у нее должно быть самосознание, не? :D

Sergey
18.08.2016
21:24:34
вот мне кажется, что этот ответ не устроит работодателя )

F01134H
18.08.2016
21:24:45
может ты как то не так вопрос прочитал?

Не может быть такого, что бы программа сама решала, что делать

это набор инструкций же

Sergey
18.08.2016
21:25:00
Замена должна производиться рекурсивно, т.е. если после замены в тексте остались или появились вхождения для замены, то их тоже нужно заменить. Предусмотрите защиту от зацикливания при замене.

вот текст )

вот я не понимаю как предусмотреть защиту по нормальному

F01134H
18.08.2016
21:27:47
получается, что вхождение для замены может измениться только внутри этой функции?

иначе придется рекурсию по новой пускать

Sergey
18.08.2016
21:28:22
ну рекурсия сама себя запускает, пока кол-во изменений больше 0

F01134H
18.08.2016
21:29:26
так, и типо между запусками $search или $replace могут поменяться?

Google
Sergey
18.08.2016
21:29:40
меняется только строка $content

F01134H
18.08.2016
21:30:31
я не знаю, че там за работа у тебя, наверное на программирование адронного коллайдера

Sergey
18.08.2016
21:31:05
Да, и замена продолжается ) но в задании написано, что нужно предусмотреть защитц

вряд ли имеется ввиду таймер или огрпничение кол-ва рекурсии в php.ini )

Sergey
18.08.2016
21:34:52
а если bbbb заменили на aaaa

Admin
ERROR: S client not available

F01134H
18.08.2016
21:35:25
но ты же сказал $replace нельзя менять во время цикла

Sergey
18.08.2016
21:36:07
если изначально условие $replcase = array("aaaa"=>"aaaa1111", "bbbb"=>"aaaa")

Sergey
18.08.2016
21:37:49
ох не, эти не опечатываются )

Sergey
18.08.2016
21:42:17
для входных данных 11115555

И замены (1111=>5555, 5555=>1111)

не прокатит

всегда будет вхождение всё равно

Aleh
18.08.2016
21:43:06
Набор правил: аa => b b => cd c => a d => a На вход подаем "аа"

Это можно вычислять до начала самой замены, в общем-то

Sergey
18.08.2016
21:44:08
нипанятна, объясни для тупых пожалуйста

Aleh
18.08.2016
21:44:47
Сейчас обмозгую простой алгоритм

Google
Aleh
18.08.2016
21:45:49
Но я правильно понял задачу, если взять мой набор правил, то должна быть бесконечная рекурсия и надо придумать способ защиты?

Сергей
18.08.2016
21:46:06
да

Sergey
18.08.2016
21:46:18
и если бесконечная рекурсия, то надо как-то это понять

Aleh
18.08.2016
21:46:35
Sergey
18.08.2016
21:46:56
в твоем - да

Сергей
18.08.2016
21:47:04
вот заменялку накидал

$input = "верх aaaa верх"; function parseTagsRecursive($input) { $rules = [ 'a' => 'a1' ]; $regex = '/a/'; if(is_array($input)){ $input = $rules[$input[0]]; } return preg_replace_callback($regex, 'parseTagsRecursive', $input); }

и она зацикливается

Страница 629 из 8430