Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   preg_match (https://forum.antichat.xyz/showthread.php?t=131851)

Student :) 29.07.2009 00:24

preg_match
 
добрый вечер.

есть некий параметр
$url=http://sait.ru/page/xxxx/

как вытащить параметр xxxx ?
так только работает когда есть слэш после xxxx
а как сделать универсально если нет слэша после xxxx
preg_match("|(.*?)/page/(.*?)\/|i",$url,$user);

Gifts 29.07.2009 00:35

Student :)
preg_match("|(.*?)/page/(.*?)\/?|i",$url,$user);

Student :) 29.07.2009 00:42

Gifts не работает

FireFenix 29.07.2009 00:54

PHP код:

<?php

$text 
'http://sait.ru/page/xxxx/';

if (
$text{strlen($text) - 1} == '/')
{
  
$text substr($text0strlen($text) - 1);
}

$path explode('/'$text);

print_r($path[count($path) - 1]); // $path[count($path) - 1] == xxxx

?>

PHP код:

<?php

$text 
'http://sait.ru/page/xxxx/';

$regex '/^http:\/\/.*?\/.*?\/(.*?)\/{0,1}$/i';

preg_match_all($regex$text$path);

print_r($path); //$path[1][0] == xxxx

?>


Student :) 29.07.2009 00:59

спасибо! щас попробуем

Gifts 29.07.2009 12:04

Student :) Хм, да, ошибочка вышла, тогда так:
preg_match("|(.*?)/page/([^/]*)|i",$url,$user);
PHP код:

$arr = array(
'http://sait.ru/page/xxxx/',
'http://sait.ru/page/anotheruser',
'http://sait.ru/page/admin/trashbin'
);
foreach(
$arr as $url)
{
preg_match("|(.*?)/page/([^/]*)|i",$url,$user);
var_dump($user);




Время: 20:28