[Exam Problems] PHP Basics 21 декември "Sum of All Values"
Здравейте,
близо час си играх с тази задача. Дава ми 60 точки. Не знам кога ще качат тестовете, та да ви питам вас от къде може да идва проблема. Тук
ModEdit: Колега, когато се поства по-дълъг код го сложи в pastebin или github, както е написано в правилата на форума, все пак отдавна си във форума и би трябвало да знаеш правилата.
You are given a keys string and a text string. Write a PHP script that finds the start key and the end key from the keys string and then applies them to the text string.
The start key will always stay in the beginning of the keys string. It can contain only letters and underscore and ends just before the first found digit.
The end key will always stay in the end of the keys string. It can contain only letters and underscore and starts just after the last found digit.
Print at the console the sum of all values in the text string, between a start key and an end key. If the value is 0 then print “The total value is: nothing”. If no start key or no end key is found then print “A key is missing”.
Може ли и някакви примери, аз до колкото разбирам, имаш стринг от ключове, който изглежда нещо такова:
rrt_r556hjhfgk3_4f_d
Това означава, че rrt_r е старта и f_d е краят. Регексът ти го хваща правилно.
Само, че как изглежда текстът? Нещо такова?
myt34rrt_rxtf48tef_dxt
Ако е така, кодът ти не го хваща този xtf48te текст по средата и съответно не смята 4+8=12
От условието не ми стана ясно също така, колко пъти се средат стартовия и завършващия ключ в текста? Т.е. може да ги има повече от веднъж?
Иначе по-горния пример го реших доста пимитивно:
Ако могат да се срещат повече от веднъж, това означава, че тази операция освен че трябва да смята сумата, ще трябва да махне текущите ключове и текста между тях от стринга и да се аплайне пак, докато strpos() не започмне да връща false
Но моля те все пак уточни дали правилно съм разбрал условието.