Ребята! Часа полтора уже бьюсь, помогите вытащить 7,4 из кода <a js-currency="137" js-type="-1" js-periods="0" href="javascript:void(0);">7,4</a> Это частный случай, а вообще таких строк много и надо вытащить все что между > и < в коде будут меяться 137, -1 и 0 (первый ноль). Спасибо за регулярку!
Код (PHP): $str='[url="javascript:void(0);"]7,4[/url]'; $str=preg_replace('/<a[^>]*>(.*)<\/a>/i','\\1',$str); echo $str; //7,4
Your спасибо! Видимо я плохо описал задачу. Уточню. На странице огромная куча ссылок. Надо спарсить только ссылки в формате: <a js-currency="цифры" js-type="отрицательные или положительные цифры" js-periods="цифры" href="javascript:void(0);">извлекаемое значение</a> вот фрагмент кода: Код (Text): <td class="name"><div>Рубли</div></td> <td><div><a js-currency="137" js-type="-1" js-periods="0" href="javascript:void(0);">7,4</a>%</div></td> <td><div><span class="red"><span class="arr arr_down"> </span><b><a js-currency="137" js-type="-1" js-periods="1" href="javascript:void(0);">7,5</a></b></span>%</div></td> <td><div><a js-currency="137" js-type="-1" js-periods="2" href="javascript:void(0);">8,1</a>%</div></td>
Код (PHP): $matches=array(); preg_match_all('/<a.*js-currency="\d+"\sjs-type="-?\d+"\sjs-periods="\d+".*?>(.*?)<\/a>/i',$text,$matches); echo'<pre>'; print_r($matches[1]);
Доброго времени суток! Есть файлик: Код (Text): //class Cname package cname.vtables { public class Cname extends Object { public function Cname() { super(); return; } public static const Grimm:Array=[0, 0, 0, 1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6, 7, 7, 7, 8, 8, 8, 9, 9, 9, 10, 10, 10, 11, 11, 11, 12, 12, 12, 1]; public static const Mant:Array=[2, 5, 8, 11 190, 193, 196, 199, 202, 205, 208, 211, 214, 217, 220, 223, 226, 229, 232, 235, 238, 241, 244, 247, 250, 316, 319, 322]; Как проще считать первый массив в массив(значиний в нём на самом деле намного больше)? Нужна ли тут регулярка или может есть функция какая, чтобы строку значений в массив перегнать?