Master-X
Регистрация
|
Вход
Форум
|
Новости
|
Статьи
Главная
»
Форум
»
Программинг, Скрипты, Софт, Сервисы
»
Тема:
Извлеч кей из url
Новая тема
Ответить
цитата
24/10/08 в 14:07
Deor Molen
Имеем
http://site.com/teen_video.html
and
http://site.com?key=teen_video
Как извлеч из подобных урл кеи?
цитата
24/10/08 в 14:20
-=Faraon=-
Код:
<?
$file=file_get_contents('listurl.txt');
preg_match_all("/\?key=(.+)?/i",$file,$o);
print_r($o[1]);
?>
цитата
24/10/08 в 14:32
kodek
Не очень понятно, что имеется в виду.
Извлечь откуда, из файла? Или из пути на сервере?
цитата
24/10/08 в 14:57
JM
Да пох в пример выше вставляешь чего надо и понеслось ;)
2Фараон объясни что с собой сделать чтоб начать в регэкспе хоть что то понимать? ;)
цитата
24/10/08 в 14:59
TRUE_AND_FALSE
Код:
<?php
$file="http://site.com?key=teen_video";
preg_match_all("/\?key=(.+)?/i",$file,$o);
$bodytag = str_replace("_", " ", $o[1][0]);
print_r($bodytag);
?>
цитата
24/10/08 в 15:15
Deor Molen
Код:
$file="http://site.com/teen_video.html";
preg_match_all("/\.(.+)?/i",$file,$o);
preg_match_all("/\/(.+)?/i",$o[1][0],$o);
$key = str_replace("_", " ", $o[1][0]);
$key = str_replace(".html", " ", $key);
print_r($key);
Как то упростить код можно?
цитата
24/10/08 в 15:17
localhost
parse_url()
цитата
24/10/08 в 15:21
asgor
цитата
24/10/08 в 22:15
Jоhn
JM писал:
Да пох в пример выше вставляешь чего надо и понеслось ;)
2Фараон объясни что с собой сделать чтоб начать в регэкспе хоть что то понимать? ;)
начать на конец писать их
цитата
24/10/08 в 23:42
Formator
Deor Molen писал:
Код:
$file="http://site.com/teen_video.html";
preg_match_all("/\.(.+)?/i",$file,$o);
preg_match_all("/\/(.+)?/i",$o[1][0],$o);
$key = str_replace("_", " ", $o[1][0]);
$key = str_replace(".html", " ", $key);
print_r($key);
Как то упростить код можно?
Можно не упрощать, а сделать так:
Код:
$url="http://site.com/teen_video.html";
preg_match ("~\.(com|net|org|biz)/(\?key=|)(.+)(\.html|$)~U", $url, $key);
$key=str_replace("_"," ",$key[3]);
Универсальный способ, конвертит оба варианта.
цитата
25/10/08 в 01:37
localhost
что ж вы все любите извращаться с регэкспами-то...
проще надо быть, проще :)
Код:
$u=parse_url($url);
if (strpos($u['path'],".html")!==false) $key=str_replace(array("/",".html"),'',$u['path']);
elseif(strpos($u['query'],"key=")!==false) $key=str_replace("key=",'',$u['query']);
else echo "а хуй его знает...\n";
под оба варианта
цитата
25/10/08 в 08:42
_s_[sov]
ну бля и нагородили та, всего то нада было foreach прикрутить к скрипту
-=Faraon=-
ну и если нужно стринг_реплейс как у
TRUE_AND_FALSE
цитата
25/10/08 в 09:49
skadmin
localhost, +1
На какой фиг регулярки тут пользовать если специальная функция есть, которая еще и отработает быстрее
цитата
25/10/08 в 10:09
Lamagro
skadmin писал:
localhost, +1
На какой фиг регулярки тут пользовать если специальная функция есть, которая еще и отработает быстрее
парсе не всегда хорошо работает в отличии от правильно составленной регулярки
цитата
25/10/08 в 10:44
_s_[sov]
ни одна строковая функция не имеет такой гибкости как регексы. пусть они работают дольше (на 1мс что несущественно) зато возможностей акиан.
цитата
25/10/08 в 11:51
freeek
Оффтопик:
JM писал:
Да пох в пример выше вставляешь чего надо и понеслось ;)
2Фараон объясни что с собой сделать чтоб начать в регэкспе хоть что то понимать? ;)
для начала вдумчиво перечитать
http://phpclub.ru/detail/article/simple_regular
http://phpclub.ru/detail/article/regexp_1
http://phpclub.ru/detail/article/regexp_2
особенно обратить внимание на
http://www.citforum.ru/internet/perl_tut/re.shtml
цитата
25/10/08 в 19:57
TRUE_AND_FALSE
freeek:
Много нового узнал!
цитата
26/10/08 в 10:22
Lamagro
2freek +1
действительно прикольные статейки
цитата
02/11/08 в 19:25
TRUE_AND_FALSE
_s_[sov]:
Парсе бывает нужен если парсить урл с папками. Код проще выходит.
Новая тема
Ответить
Эта страница в полной версии