powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Помогите написать регулярку
4 сообщений из 4, страница 1 из 1
Помогите написать регулярку
    #38467529
Фотография paha4444
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть таблица на странице с курсами валют на сегодняшний день, мне нежно получить из неё такие данные:

USD 799.3000

вот таблица:

Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
<table width="100%" cellspacing="2" cellpadding="2">
<tbody>
<tr>
<td class="col_title_c">Код цифровой</td>
<td class="col_title_c">Код литерный</td>
<td class="col_title_c">Количество единиц</td>
<td class="col_title">Название валюты</td>
<td class="col_title_c">Официальный курс</td>
</tr>
<tr>
<td class="cell_c">795</td>
<td class="cell_c">TMM</td>
<td class="cell_c">100</td>
<td class="cell"></td>
<td class="cell_c">280.4561</td>
</tr>
<tr>
<td class="cell_c">840</td>
<td class="cell_c">USD</td>
<td class="cell_c">100</td>
<td class="cell"></td>
<td class="cell_c">799.3000</td>
</tr>
<tr>
<td class="cell_c">960</td>
<td class="cell_c">XDR</td>
<td class="cell_c">100</td>
<td class="cell"></td>
<td class="cell_c">1220.0278</td>
</tr>

</tbody>
</table>
...
Рейтинг: 0 / 0
Помогите написать регулярку
    #38467543
неа?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
Помогите написать регулярку
    #38474932
Фотография volodin661
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
paha4444Есть таблица на странице с курсами валют на сегодняшний день, мне нежно получить из неё такие данные:

USD 799.3000

вот таблица:

Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
<table width="100%" cellspacing="2" cellpadding="2">
<tbody>
<tr>
<td class="col_title_c">Код цифровой</td>
<td class="col_title_c">Код литерный</td>
<td class="col_title_c">Количество единиц</td>
<td class="col_title">Название валюты</td>
<td class="col_title_c">Официальный курс</td>
</tr>
<tr>
<td class="cell_c">795</td>
<td class="cell_c">TMM</td>
<td class="cell_c">100</td>
<td class="cell"></td>
<td class="cell_c">280.4561</td>
</tr>
<tr>
<td class="cell_c">840</td>
<td class="cell_c">USD</td>
<td class="cell_c">100</td>
<td class="cell"></td>
<td class="cell_c">799.3000</td>
</tr>
<tr>
<td class="cell_c">960</td>
<td class="cell_c">XDR</td>
<td class="cell_c">100</td>
<td class="cell"></td>
<td class="cell_c">1220.0278</td>
</tr>

</tbody>
</table>



===========================================================================================

#!/usr/bin/perl
use utf8;
use 5.10.0;

my $string=<<EOF;
<table width="100%" cellspacing="2" cellpadding="2">
<tbody>
<tr>
<td class="col_title_c">Код цифровой</td>
<td class="col_title_c">Код литерный</td>
<td class="col_title_c">Количество единиц</td>
<td class="col_title">Название валюты</td>
<td class="col_title_c">Официальный курс</td>
</tr>
<tr>
<td class="cell_c">795</td>
<td class="cell_c">TMM</td>
<td class="cell_c">100</td>
<td class="cell"></td>
<td class="cell_c">280.4561</td>
</tr>
<tr>
<td class="cell_c">840</td>
<td class="cell_c">USD</td>
<td class="cell_c">100</td>
<td class="cell"></td>
<td class="cell_c">799.3000</td>
</tr>
<tr>
<td class="cell_c">960</td>
<td class="cell_c">XDR</td>
<td class="cell_c">100</td>
<td class="cell"></td>
<td class="cell_c">1220.0278</td>
</tr>

</tbody>
</table>
EOF

#собираем в массив @td все значения тэгов td
while ($string =~ m{<td}g) {

$string =~ m{\G.+>([^<]+)</td>};
push @td, $1;
}

#находим индекс ячейки массива в которой лежит слово USD
ждёмс while $td[$index++] ne 'USD';

say $td[$index+2];

sub ждёмс{}


======================================================================================================
баловство с русскими именами переменных проверять под Линуксом, под Виндусом проблемы с кодировкой utf-8 в консольном окне.
...
Рейтинг: 0 / 0
Помогите написать регулярку
    #38475075
preg_match
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
//PHP
$code = 'USD';
preg_match(
     sprintf('|<[^>]+>%s<[^>]+>.*?<[^>]+>.*?<[^>]+>.*?<[^>]+>.*?<[^>]+>.*?<[^>]+>(.*?)<[^>]+>|si', $code),
     $tableString, 
     $out
);
var_dump($code . ' = ' . $_needle =& $out[1]);   
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Помогите написать регулярку
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]