推荐关注
Meteor
JSLint - a JavaScript code quality tool
jsFiddle
D3.js
WebStorm
推荐书目
JavaScript 权威指南第 5 版
Closure: The Definitive Guide
simple2025
0D

关于 js 的正则匹配问题

  •  
  •   simple2025 · Jan 10, 2021 · 2686 views
    This topic created in 1966 days ago, the information mentioned may be changed or developed.

    这段代码

    var line = `let add_url = '{{reverse_url("admin/test")}}'`
    var re = new RegExp('.*reverse_url\("(.*)"\).*')
    console.log("result", re.exec(line))
    

    为什么运行的结果是

    result null
    
    4 replies    2021-01-11 14:03:44 +08:00
    lpts007
        1
    lpts007  
       Jan 10, 2021   ❤️ 1
    \\(
    mineV
        2
    mineV  
       Jan 10, 2021   ❤️ 1
    一楼正解
    /a\("(.*)"\)/.exec(`a("admin/test")`)
    new RegExp('a\\("(.*)"\\)').exec(`a("admin/test")`)
    上面俩都对,字符串常量和正则常量的区别
    autoxbc
        3
    autoxbc  
       Jan 10, 2021
    字面量:斜杠需要转义,反斜杠不用
    构造式:斜杠不用转义,反斜杠需要

    取决于表达式里哪种符号比较多,可以交替使用两种方法;
    一个例子是,含有斜杠很多的 URL,则用构造式更为可读;
    new RegExp('/a/b/c/d') --> /\/a\/b\/c\/d/
    no1xsyzy
        4
    no1xsyzy  
       Jan 11, 2021
    @autoxbc 那么有没有含有 DrRacket 风格的 Text Block 或者 RegExp Block 的编辑器 / IDE 呢?(胡言乱语
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1398 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 42ms · UTC 16:59 · PVG 00:59 · LAX 09:59 · JFK 12:59
    ♥ Do have faith in what you're doing.