“^(http:\/\/)”以http://开头
  ?:不出现或出现一次
  + : 出现一次以上
  s : 模式中的圆点元字符(.)匹配所有的字符,包括换行符

解决方案 »

  1.   

    有现成的函数为什么不用?
    print_r(parse_url("http://www.php.net/index.html"));
    Array
    (
        [scheme] => http
        [host] => www.php.net
        [path] => /index.html
    )
      

  2.   

    多谢老大提供的方法,很感谢啊。
    我现在是学习阶段,还是想把正则搞清楚好一点!
    再麻烦一下johnpanq(飞花逐月)
    “+ : 出现一次以上”
    就"/^(http:\/\/)?([^\/]+)/i"而言,这里的“+”是指出现的什么一次以上?
    还有“^”和“[^]”的区别到底什么?
      

  3.   

    字符?
    意义:匹配?前面的字符0次或1次。
    例如:/e?le?/匹配"angel"中的’el’和"angle."中的’le’.
    说白了,就是http://可有可无
      

  4.   

    我刚才看到这样的:
    $Text = preg_replace("/\[b\](.+?)\[\/b\]/is","<b>\\1</b>",$Text);
    这里的“is”是什么意思?
    还有这一整句是何意思?
      

  5.   

    这里的“is”是什么意思?
    ------------------------
    i --- ignorecase
    s --- singleline,使小数点(.)可以匹配换行符(\n)
    推荐正则表达式入门文档:
    http://www.regexlab.com/zh/regref.htm