ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

preg_match
  #1  
Старый 29.07.2009, 00:24
Аватар для Student :)
Student :)
Участник форума
Регистрация: 09.02.2007
Сообщений: 202
Провел на форуме:
537148

Репутация: 9
Отправить сообщение для Student :) с помощью ICQ
Question preg_match

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

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

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

Последний раз редактировалось Student :); 29.07.2009 в 00:32..
 
Ответить с цитированием

  #2  
Старый 29.07.2009, 00:35
Аватар для Gifts
Gifts
Reservists Of Antichat - Level 6
Регистрация: 25.04.2008
Сообщений: 827
Провел на форуме:
2769640

Репутация: 1304


По умолчанию

Student
preg_match("|(.*?)/page/(.*?)\/?|i",$url,$user);
 
Ответить с цитированием

  #3  
Старый 29.07.2009, 00:42
Аватар для Student :)
Student :)
Участник форума
Регистрация: 09.02.2007
Сообщений: 202
Провел на форуме:
537148

Репутация: 9
Отправить сообщение для Student :) с помощью ICQ
По умолчанию

Gifts не работает
 
Ответить с цитированием

  #4  
Старый 29.07.2009, 00:54
Аватар для FireFenix
FireFenix
Постоянный
Регистрация: 03.06.2009
Сообщений: 385
Провел на форуме:
3178262

Репутация: 389
По умолчанию

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

?>
 
Ответить с цитированием

  #5  
Старый 29.07.2009, 00:59
Аватар для Student :)
Student :)
Участник форума
Регистрация: 09.02.2007
Сообщений: 202
Провел на форуме:
537148

Репутация: 9
Отправить сообщение для Student :) с помощью ICQ
По умолчанию

спасибо! щас попробуем
 
Ответить с цитированием

  #6  
Старый 29.07.2009, 12:04
Аватар для Gifts
Gifts
Reservists Of Antichat - Level 6
Регистрация: 25.04.2008
Сообщений: 827
Провел на форуме:
2769640

Репутация: 1304


По умолчанию

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);

 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ