Javascript:将数字保存到字符串后的变量

Javascript:将数字保存到字符串后的变量,javascript,Javascript,我想得到这3个字符串(TTT、RDT和PRPR)之后和“?”符号之前的数字 示例URL: 1.) http://www.website3.com/pages/coupon5+TTT1?adaafaf124ac 2.) http://www.website3.com/pages/coupon5+RDT12?aaacaf12c212 3.) http://www.website3.com/pages/coupon5+PRPR300?t222 示例变量: x=1 x=12 x=300 var pa

我想得到这3个字符串(TTT、RDT和PRPR)之后和“?”符号之前的数字

示例URL:

1.) http://www.website3.com/pages/coupon5+TTT1?adaafaf124ac
2.) http://www.website3.com/pages/coupon5+RDT12?aaacaf12c212
3.) http://www.website3.com/pages/coupon5+PRPR300?t222
示例变量:

  • x=1
  • x=12
  • x=300

     var path = http://www.website3.com/pages/coupon5+TTT1?adaafaf124ac;
     var newpath = path.match((TTT|RDT|PRPR)\d+).substring(/d+);
    

  • 下面的语句将得到加号和问号之间的数字

    var path = 'http://www.website3.com/pages/coupon5+TTT1?adaafaf124ac';
    
    var number_x =  path.match(/\+.+\?/)[0].match(/\d+/)[0] * 1;
    

    如果希望将字符串与TTT/RDT/PRPR匹配,请使用以下语句

    var number_x = path.match(/(TTT.+|RDT.+|PRPR.+)\?/)[0].match(/\d+/)[0] * 1
    

    这将为您提供供应商和之后的编号

    var path = 'http://www.website3.com/pages/coupon5+TTT1?adaafaf124ac';
    
    var pathComponents = path.match(/(TTT|RDT|PRPR)([\d]+)\?/);
    
    console.log(pathComponents[0]) \\ 'TTT1?' ---- Everything
    
    console.log(pathComponents[1]) \\ 'TTT' ---- Vendor
    
    console.log(pathComponents[2]) \\ '1' ---- Number(s)
    

    在这种情况下,您的供应商仅限于TTT、RDT和PRPR。

    符号+在浏览器中呈现不同的效果。最好在这些特定字符串之后获取数字。(TTT,RDT,PRPR)-更新了问题。加号在浏览器中呈现的方式不同,因此我不希望在匹配中使用加号。这不使用加号,我不明白您遇到了什么问题。更新了答案,它尝试与TTT/RDT/PRPR匹配;URL不是硬编码的,而是从窗口获取的..这会使它无法工作吗?谢谢!你最好!