语句:
preg_match("/-(.+)_/",GetUrl(),$use_get);
if(isset($use_get[1]))
{
// explode 分割字符串
$exp_get = explode("-page-",$use_get[1]); 
}if(isset($exp_get[0]))
{
$f_id = intval($exp_get[0]); // 论坛id
}if(isset($exp_get[1]))
{
$page = intval($exp_get[1]); // page 页码
}
else
{
$page = "1";
}
可以匹配类似于 http://***.com/list.php?f-1-page-2.html的url吗?
"/-(.+)_/",这个如何解释,特别是中间那个(.+)和最后面那个"_".还望大虾指点一二,谢谢了

解决方案 »

  1.   

    网上很多资料的,不妨google一下
    ===========================================
    . : (小数点)匹配除换行符外的所有单个的字符。
    + : 匹配+号前面的字符1次或n次。等价于{1,}。
    _ : 字符'_'可以匹配类似于 http://***.com/list.php?f-1-page-2.html的url吗?
    ==========================================================
    不能,这里面没有出现在字符'-'和字符'_'中间的内容
      

  2.   

    /-(.+)_/
    匹配以“-”开始,以“_”结束,中间不含换行的字符(一个或以上),构成的字符串
    其中子匹配是不包含上述的首尾那两个字符按你写的URL一般是不匹配的,除非你的“***”符合上述条件
      

  3.   

    http://***.com/list.php?f-1-page-2.html呵呵,这个url比较有趣,没有尝试过?