url的格式是以下几种:
http(s)://username.spaces.live.com
http(s)://username.spaces.live.com/blog/dasdausername的命名规则是数字或者字母或者数字和字母组合。请问这样的正则表达式是什么?最好是js使用的。

解决方案 »

  1.   

    你的正规要干什么,取username的值吗?------------------------------------
    ""
      

  2.   

    我要判断客户输入的url是否符合这个规范
      

  3.   

    这是我自己写的正则表达式:
    ^http\://[a-zA-Z_0-9\-\.]+spaces.live.com
      

  4.   

    if (object.match(/^http(s)?:\/\/([a-zA-Z0-9]+)\.spaces.live.com$/)) {} else {
    }
      

  5.   

    测试数据:
    https://username.spaces.live.com
    http://username.spaces.live.com/blog/dasda
    正则:http(s)?://[a-zA-Z_0-9\-\.]+spaces.live.com(/blog/[^\.]*)?
    匹配结果 :
    捕获 1 :
        https://username.spaces.live.com
    ==============================华丽的分隔线===============================
    捕获 2 :
        http://username.spaces.live.com/blog/dasda
    ==============================华丽的分隔线===============================
    欢迎访问正则测试页http://www.17897.com/regextext.aspx
      

  6.   

    (https?://)((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})
      

  7.   

    (https?://)((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})这个表达式能够完全匹配LZ给出的第一种格式,能捕获第二种格式,但不能完全匹配!:P
      

  8.   

    http(?:s)?://(\w+)\.spaces.live.com(?:/\w+)*测试:
    https://username.spaces.live.com
    http://username.spaces.live.com/blog/dasda
    取得成功
    group["1"]是usernamePS:我是用The Regulator的
      

  9.   

    忘了 如果是js的话要把\w 改成 [0-9A-Za-z_]