|
|
|
| приветствую всех =) очень нужна помощь для извлечения ip-адресов и портов из следующего кода
<table width="250" border="0" cellspacing="5" cellpadding="5" class="box"><tr><td>
83.151.21.41:8118
<br>
221.120.127.74:3128
<br>
219.27.109.10:8080
<br>
81.21.97.68:8080
<br>
196.15.211.91:25517
<br>
87.118.102.77:6654
<br>
202.58.169.106:8080
<br>
189.168.100.190:8080
<br>
201.77.47.218:8080
<br>
118.97.48.114:3128
<br>
</td></tr></table>
|
и занести данные в массив
данный код содержится в переменной $out[0][0]
то есть после извлечения массив должен быть примерно таким
$tmp[0] = '83.151.21.41:8118';
$tmp[1] = '221.120.127.74:3128';
.................
|
| |
|
|
|
|
|
|
|
для: eclipse
(14.09.2008 в 10:18)
| |
<?php
$txt = '
<table width="250" border="0" cellspacing="5" cellpadding="5" class="box"><tr><td>
83.151.21.41:8118
<br>
221.120.127.74:3128
<br>
219.27.109.10:8080
<br>
81.21.97.68:8080
<br>
196.15.211.91:25517
<br>
87.118.102.77:6654
<br>
202.58.169.106:8080
<br>
189.168.100.190:8080
<br>
201.77.47.218:8080
<br>
118.97.48.114:3128
<br>
</td></tr></table> ';
$pattern = '/^(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}:\d{1,5})\s?$/m';
if(preg_match_all($pattern, $txt, $out, PREG_PATTERN_ORDER))
$out = $out[1];
print_r($out);
?>
|
\s? потребовался затем, чтоб заставить адекватно работать PCRE_MULTILINE с текстом , разделенным CRLF-парами. | |
|
|
|
|
|
|
|
для: Trianon
(14.09.2008 в 10:34)
| | спасибо огромное Trianon =)
как всегда отличный вариант решения проблемы... все оч доступно и понятно... | |
|
|
|