Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Как грамотно анализировать массив?

Док Знаток (270), на голосовании 8 лет назад
Здравствуйте!
Прошу, не ругайте сильно за столь "профанские" вопросы, я только начинаю изучать PHP.

Итак, есть два массива.
С ними требуются некоторые взаимодействия, я понимаю принцип, но операторов в языке так много, что я не могу выбрать нужный.
Примерные массивы:

$prog=array('program analiz
begin
int i, n ; {Описание переменных}
float sum ; {Описание переменных}
readln n ; {Указание количества итераций}
sum:= 0.31e-1 ;
i:=1 ;
while (i<=n)
begin
sum:=sum+(1/i);
i:=i+1;
end
writeln sum; {Вывод результата}
end.');

$oper='program,var,begin,end,ass,if,then,else,for,to,do,while,read,write,true,false';

1. Каким образом из $prog удалить "комментарии" (фигурные скобки с содержимым)? Предполагаю, что лучше использовать регулярку, но мои варианты не действуют.

2. Из $prog выбрать совпадающие элементы массива $oper и поместить их в новый массив (допустим, $operators) без привязки к регистру и исключая повторения.
Я думаю, что тут применим array_filter, но опять ничего не вышло.

3. Как выгрузить в ещё один массив ($ost) оставшиеся слова без цифр и знаков?

4. И как выгрузить в новый массив ($cif) числа через запятую? Тоже пытался через регулярки..

Если Вы не против, то как можно подробнее, чтобы не только смог использовать, но и понять хочется. Могу даже отблагодарить 200 рублями на телефон, а то бьюсь уже несколько вечеров.
Голосование за лучший ответ
Максим Завитаев Мудрец (13852) 8 лет назад
Причем тут вообще массивы? Вы в $prog вообще храните один элемент с текстом. Зачем его в массив пихать не понятно. Чтобы удалить все вхождения строки (комментарии) можно использовать str_replace().
ДокЗнаток (270) 8 лет назад
Так $prog загружается из формы методом POST. Думал, что так загружается только в массив.
Максим Завитаев Мудрец (13852) $_POST является сам глобальным массивом. Но все нем хранятся строки, переданные из полей формы методом POST.
Senior Developer Мастер (2207) 8 лет назад
или preg_replace() с использованием регулярных выражений - это более гибкое решение.
Похожие вопросы