
07.03.2010, 15:05
|
|
Новичок
Регистрация: 02.02.2010
Сообщений: 24
С нами:
8563527
Репутация:
1
|
|
Код:
import re
h = """<span style="color:#777777;"><a class='addAudioLink' href="" onclick="addAudio(this, {act:'a_add',add:1,gid:0,aid:73997023,oid:66812379 ,hash:'4284ff74a2fa5248ba79500ef5f9388c'});return false;">Добавить</a></span>"""
j = re.search("aid:(?P<aid>\d+),oid:(?P<oid>\d+) ,hash:'(?P<hash>\w+)'", h)
print j.groups()
Код:
('73997023', '66812379', '4284ff74a2fa5248ba79500ef5f9388c')
Или вот так на Perl:
Код:
#!/usr/bin/perl
$h = <<EOF;
<span style="color:#777777;"><a class='addAudioLink' href="" onclick="addAudio(this, {act:'a_add',add:1,gid:0,aid:73997023,oid:66812379 ,hash:'4284ff74a2fa5248ba79500ef5f9388c'});return false;">Добавить</a></span>
EOF
$h =~ /aid:(\d+),oid:(\d+) ,hash:'(\w+)'/;
print "aid: $1\n";
print "oid: $2\n";
print "hash: $3\n";
Код:
aid: 73997023
oid: 66812379
hash: 4284ff74a2fa5248ba79500ef5f9388c
С PHP знаком плохо, но:
Код:
<?php
$s = <<<EOF
<span style="color:#777777;"><a class='addAudioLink' href="" onclick="addAudio(this, {act:'a_add',add:1,gid:0,aid:73997023,oid:66812379 ,hash:'4284ff74a2fa5248ba79500ef5f9388c'});return false;">Добавить</a></span>
EOF;
preg_match_all("/aid:(?<aid>\d+),oid:(?<oid>\d+) ,hash:'(?<hash>\w+)'/", $s, $m);
echo "<p>aid: " . $m["aid"][0] . "</p>";
echo "<p>oid: " . $m["oid"][0] . "</p>";
echo "<p>hash: " . $m["hash"][0] . "</p>";
?>
Код:
aid: 73997023
oid: 66812379
hash: 4284ff74a2fa5248ba79500ef5f9388c
Последний раз редактировалось expee; 07.03.2010 в 16:23..
|
|
|

07.03.2010, 16:01
|
|
Познающий
Регистрация: 13.08.2009
Сообщений: 92
С нами:
8812922
Репутация:
1
|
|
чёт не выходит.. пробую на php сделать...
PHP код:
<?php
$string = "<span style='color:#777777;'><a class='addAudioLink' href='' onclick='addAudio(this, {act:'a_add',add:1,gid:0,aid:73997023,oid:66812379 ,hash:'4284ff74a2fa5248ba79500ef5f9388c'});return false;'>Добавить</a></span>";
preg_match_all("/aid:(\d+),oid:(\d+) ,hash:'(\w+)'/", $string, $arr);
echo $arr;
?>
в чём проблема?
|
|
|

07.03.2010, 16:24
|
|
Новичок
Регистрация: 02.02.2010
Сообщений: 24
С нами:
8563527
Репутация:
1
|
|
чёт не выходит.. пробую на php сделать...
Обновил предыдущий пост.
|
|
|

07.03.2010, 16:29
|
|
Познающий
Регистрация: 13.08.2009
Сообщений: 92
С нами:
8812922
Репутация:
1
|
|
нее.. не выходит.
|
|
|

07.03.2010, 16:32
|
|
Постоянный
Регистрация: 05.12.2004
Сообщений: 647
С нами:
11278406
Репутация:
818
|
|
echo $arr;
в чём проблема?
Проблема в тебе, т.к. функция возвращает array
PHP код:
<?php
$str = <<<HTML
<span style="color:#777777;"><a class='addAudioLink' href="" onclick="addAudio(this, {act:'a_add',add:1,gid:0,aid:73997023,oid:66812379 ,hash:'4284ff74a2fa5248ba79500ef5f9388c'});return false;">Добавить</a></span>
HTML;
if(preg_match('#gid:(\d+),aid:(\d+),oid:(\d+)#',$str,$m))
print_r($m);
?>
Последний раз редактировалось b3; 07.03.2010 в 16:37..
|
|
|

08.03.2010, 17:39
|
|
Участник форума
Регистрация: 26.08.2009
Сообщений: 138
С нами:
8794390
Репутация:
18
|
|
Есть сайт. http://v-ctile.ru/
Под каждым дизайном есть кнопка "получить". При нажатии на неё выдаётся "Отправьте SMS-сообщение 838610 на номер 7122". Вот нужно спарсить 838610.
Спасибо.
|
|
|

08.03.2010, 18:32
|
|
Новичок
Регистрация: 16.02.2010
Сообщений: 9
С нами:
8544440
Репутация:
0
|
|
Сообщение от programming
Есть сайт. http://v-ctile.ru/
Под каждым дизайном есть кнопка "получить". При нажатии на неё выдаётся "Отправьте SMS-сообщение 838610 на номер 7122". Вот нужно спарсить 838610.
Спасибо.
8..... - держи, выдерет любое шестизначное чило начинабщееся с восьми
|
|
|

08.03.2010, 18:53
|
|
Участник форума
Регистрация: 26.08.2009
Сообщений: 138
С нами:
8794390
Репутация:
18
|
|
Сообщение от Palanik
8..... - держи, выдерет любое шестизначное чило начинабщееся с восьми
Я вообще не могу понять даже откуда выдирать. Я так понимаю, что это окно JS..
Вопрос решён!!!
Последний раз редактировалось programming; 08.03.2010 в 20:31..
|
|
|

09.03.2010, 03:54
|
|
Постоянный
Регистрация: 05.12.2004
Сообщений: 647
С нами:
11278406
Репутация:
818
|
|
Сообщение от Palanik
8..... - держи, выдерет любое шестизначное чило начинабщееся с восьми
Вообщето данное выражение будет выдирать все подрят начиная с "8" длинною 6 символов, это может быть что угодно- пробел, символы, числа и тд.
|
|
|

09.03.2010, 14:10
|
|
Новичок
Регистрация: 16.02.2010
Сообщений: 9
С нами:
8544440
Репутация:
0
|
|
Сообщение от b3
Вообщето данное выражение будет выдирать все подрят начиная с "8" длинною 6 символов, это может быть что угодно- пробел, символы, числа и тд.
Благодарю за дополнение.
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|