|
|
|
| Странное название темы, но всё же стал вопрос...Смысл: пытаюсь написать граббер. Грабим страничку, в которой есть товары и цены. Задача: увеличить цену на определённое число. Итак, имеем ячейки таблицы вида:
________________________
<td class="price incaritem">
440 000 <span class="ages">Руб.</span>
________________________
Видим, что цена товара 440 000 пишем регулярное выражение, что бы выдернуть цену:
$RetrieveFile = preg_replace('#<td class="price incaritem">(.+)<span class="ages">(.+)</span>#isU', '<td>$1</td>',$RetrieveFile);
|
Теперь получается что $1 имеет значение цены и равно 440 000. Как мне правильно преобразовать текстовый тип в числовой, а патом прибавить туда число и вывести на дисплей. Т.е. что то типа:
<?
$1 = (int)$1; // преобразуем в int
$1 = $1 + 1000; //добавляем накрутку
?>
|
Как это правильно организовать в регульярном выражении? | |
|
|
|
|
|
|
|
для: PROUser
(21.07.2008 в 14:32)
| | Ну есть какае-нибудь решения, либо мануалы, каким образом мне вести преобразование/вычисление в регулярном выражении? | |
|
|
|
|
|
|
|
для: PROUser
(21.07.2008 в 14:32)
| | Можно поступить следующим образом
<?php
$RetrieveFile = '<td class="price incaritem">
440 000 <span class="ages">Руб.</span>';
$pattern = '#<td class="price incaritem">(.+)<span class="ages">(.+)</span>#iseU';
$replacement = "'<td>'.(str_replace(' ', '', '$1') + 1000).'</td>'";
$RetrieveFile = preg_replace($pattern,
$replacement,
$RetrieveFile);
echo $RetrieveFile;
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(22.07.2008 в 11:29)
| | Отлично! Большое Спасибо!.
Уже незнал что делать. Ну о том что нужно убить пробелы я догадался. Теперь вродебы понял, сначала нужно было задать шаблон. Патом если нашлось соостветствие по шаблону производить вычисление. Ещё раз спасибо. | |
|
|
|