|
|
|
|
<tr><td valign="top" width="211">
<p><b>тест</b></p>
</td><td valign="top" width="86">
<p></p>
</td><td valign="top" width="86">
<p></p>
</td><td valign="top" width="86">
<p><b>-42,2% </b></p>
</td><td valign="top" width="86">
<p></p>
</td></tr>
|
есть подобные куски кода. из известного есть только слово тест к примеру. необходимо както извлечь "-42,2". | |
|
|
|
|
|
|
|
для: SIDPR
(01.04.2009 в 16:01)
| | | |
|
|
|
|
|
|
|
для: Андрюха.
(27.04.2009 в 06:42)
| | Может быть еще такойже блок но с другим словом, нужно както слово учитывать и в соответствии с тем если оно есть выдерать процент из ячейки | |
|
|
|
|
|
|
|
для: sidPR
(29.04.2009 в 10:54)
| | Ячеек очень много но мне надо опиратся на текст который выше
к примеру:
<tr><td valign="bottom" nowrap="true" width="201">
<p><strong>стоимость акций</strong></p>
</td><td valign="bottom" nowrap="true" width="83">
<p> </p>
</td><td valign="bottom" nowrap="true" width="83">
<p> </p>
</td><td valign="bottom" nowrap="true" width="83">
<p align="right">270 656</p>
</td><td valign="bottom" width="83">
<p align="right">39,0%</p>
</td></tr>
|
есть слово "стоимость акций" причем оно может быть в Жирным и Курсивым не важно главное что оно в <TD><TD> из известного у меня есть это слово "стоимость акций" а неизвестно у меня 4столбик <TD></TD> в примере это 39,0% опять также может быть в любом стиле и обрамлено любыми тегами. | |
|
|
|
|
|
|
|
для: sidPR
(05.05.2009 в 16:08)
| | Если уж вам нужен процент, включая минус, то думаю пойдет такое решение:
preg_match_all("#>[\d,-]+%#",$text,$out);
|
| |
|
|
|
|
|
|
|
для: AcidTrash
(05.05.2009 в 20:12)
| | а где в регулярке указать "стоимость акций" .. т.к. <tr> много и разные .. надо четко привязыватся к словам.. помогите плиз | |
|
|
|
|
|
|
|
для: sidPR
(06.05.2009 в 14:54)
| | Если стоимость акций указывается со знаками + или -, то:
#^(\+|-)[\d]+(,[\d]{1,2})?%$#
шаблон также подходит и для целых и для дробных выражений | |
|
|
|
|
|
|
|
для: Брыль
(06.05.2009 в 18:33)
| | а где в регулярке указать "стоимость акций" ? | |
|
|
|
|
|
|
|
для: sidPR
(13.05.2009 в 17:22)
| | Взможно такое подойдет(на вашем примере)
<pre>
<?
$text='<tr><td valign="bottom" nowrap="true" width="201">
<p><strong>стоимость акций</strong></p>
</td><td valign="bottom" nowrap="true" width="83">
<p> </p>
</td><td valign="bottom" nowrap="true" width="83">
<p> </p>
</td><td valign="bottom" nowrap="true" width="83">
<p align="right">270 656</p>
</td><td valign="bottom" width="83">
<p align="right">39,0%</p>
</td></tr>';
preg_match_all("#>(\d+\s\d+)<.*?>([\d,-]+%)#s",$text,$out);
unset($out[0]);
print_r($out);
?>
|
| |
|
|
|
|
|
|
|
для: AcidTrash
(13.05.2009 в 21:57)
| | а если я хочу привязыватся к слову "стоимость акций" т.к. есть еще пару ячеек в которых есть нужные мне цифр но заголовок там другой .
я должен вместо этого
"(\d+\s\d+)" вставить - "стоимость акций" ? | |
|
|
|
|
|
|
|
для: sidPR
(14.05.2009 в 16:25)
| | Я уже толком не понимаю, что вы хотите(пример скудный), но может быть теперь так :)
preg_match_all("#.*?<strong>(стоимость акций)</strong>.*?>(\d+\s\d+)<.*?>([\d,-]+%)#s",$text,$out);
|
P.S. РВ - это шаманство.:) | |
|
|
|
|
|
|
|
для: AcidTrash
(14.05.2009 в 22:08)
| | Спасибо большое! вроде работает :)
Но вот
<tr><td valign="bottom" nowrap="true" width="201">
<p><strong>прирост стоимости портфеля</strong></p>
</td><td valign="bottom" nowrap="true" width="83">
<p> </p>
</td><td valign="bottom" nowrap="true" width="83">
<p> </p>
</td><td valign="bottom" nowrap="true" width="83">
<p align="center"><strong>43,9%</strong></p>
</td><td valign="bottom" nowrap="true" width="83">
<p> </p>
</td></tr>
|
preg_match_all("#.*?<strong>(прирост стоимости портфеля)</strong>.*?>(\d+\s\d+)<.*?>([\d,-]+%)#s",$text,$out);
он ненаходит ничего :( | |
|
|
|