|
|
|
| Объясните с регулярными выражениями, к примеру есть строка
Размеры: 1x521 и 15.0 и 61.6. Из этой строки нужно в отдельный массив взять
1x521, 15.0, 61.6.
Почему массив, потому что кол-во таких строк может быть больше одной... | |
|
|
|
|
|
|
|
для: bartik
(05.04.2010 в 15:39)
| | Строка всегда в такой форме?
Размеры: 1x521 и 15.0 и 61.6.
|
Если да, то можно отталкиваться от следующего скрипта
<?php
$text = "Объясните с регулярными выражениями, к примеру есть строка
Размеры: 1x521 и 15.0 и 61.6. Из этой строки нужно в отдельный массив взять
1x521, 15.0, 61.6.
Почему массив, потому что кол-во таких строк может быть больше одной...";
$pattern = "|Размеры:[\s]*([\d]+x[\d]+)[\s]*и[\s]*([\d\.]+)[\s]*и[\s]*([\d\.]+)\.|is";
preg_match_all($pattern, $text, $out, PREG_SET_ORDER);
echo "<pre>";
print_r($out);
echo "</pre>";
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(05.04.2010 в 17:09)
| | А если строка в такой форме
<table>
<td><tr>1x521</td></tr> (тут всегд есть знак x)
<td><tr>15.0</td></tr> (тут на конце всегда 0)
<td><tr>61.6</td></tr> (тут всегда стоит .
<td><tr>4314</td></tr> (тут всегда 4 цифры)
</table>
|
Как быть тут?
то есть вопрос именно в том, как подобрать такое регулярное выражение, чтобы условие было конкретно для 1x521, 15.0(тут на конце всегда 0) и 61.6 и 4314 (тут всегда 4 цифры)
И ещё, не нашёл в книге описания, что означает оператор i, is, isU - если не трудно опишите их.
Отдельно спасибо за книгу, использую PHP 5 Санкт-петербург 2005 год. | |
|
|
|
|
|
|
|
для: bartik
(05.04.2010 в 22:27)
| | (1x521).*?(15\.0).*?(61\.6) и т.д. | |
|
|
|