例如有一个URL:www.text.com?uid-555&page-251.html我现在要匹配这个URL种的page参数,即251。正则应该怎样返回?

解决方案 »

  1.   

    <script type="text/javascript">
    var str = "www.text.com?uid-555&page-251.html";
    var reg = /\.html$/;
    var reg2 = /^.*-/;
    str = str.replace(reg,"");
    str = str.replace(reg2,"");
    alert(str);
    </script>
      

  2.   


    虽然这种办法可以,但是很不实用啊,我要是把参数换个位置呢?
    在描述下,我可以确定我要的是字符串“page-”后面的数字。怎样可以根据“page-”匹配?
      

  3.   

    <script type="text/javascript">
    //var str = "www.text.com?uid-555&page-251.html";
    var str = "www.text.com?page-25222221&uid-555.html";
    //var reg = /\.html$/;
    var reg2 = /^.*page-/;
    var reg3 = /&.*\.html|\.html$/;

    str = str.replace(reg2,"");
    str = str.replace(reg3,"");
    alert(str);
    </script>
      

  4.   


    恩,对了,麻烦能解释下 var reg3 = /&.*\.html|\.html$/; 这个的意思吗?
      

  5.   

    var reg3 = /&.*\.html|\.html$/;     &匹配“&”;.匹配任意字符;*表示前面的任意字符重复N次或者不重复,\.匹配点;html匹配html;$匹配结尾;|表示或者的意思不知道有没有一次性解决的方法,求一次解决的方法啊啊啊
      

  6.   

    var reg=/page-(\d+)/i;取捕获组1的值
      

  7.   

    这样取出来直接parseInt就可以了
      

  8.   

    是不是这样?var str = document.URL;
    var regex = /page-(\d+)/i;
    var objstr = str.match(regex);
    alert(objstr[1]);