V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐关注
Meteor
JSLint - a JavaScript code quality tool
jsFiddle
D3.js
WebStorm
推荐书目
JavaScript 权威指南第 5 版
Closure: The Definitive Guide
flowfire
V2EX  ›  JavaScript

javascript 中的正则表达式无法使用非捕获组?

  •  
  •   flowfire · 2016-05-16 11:01:13 +08:00 · 2135 次点击
    这是一个创建于 2908 天前的主题,其中的信息可能已经有所发展或是发生改变。

    还是说是我的写法错误? 我本意是想匹配 a (任意非&) c 或者 b (任意非&) c 或者 a (任意非&) d 或者 b (任意非&) d 然是并不想捕获 ab 或 cd 这两个组。,然而报错, 另外, js 中似乎也不能使用零宽断言?

    5 条回复    2016-05-16 12:33:42 +08:00
    wizardoz
        1
    wizardoz  
       2016-05-16 11:03:47 +08:00
    反正在 python 中是 (?:a|b)
    flowfire
        2
    flowfire  
    OP
       2016-05-16 11:10:12 +08:00
    @wizardoz 好神奇。。。
    而且我刚刚测试,似乎预测先行断言是可以的,但是回顾后发断言貌似报错,难道有更神奇的使用方式么。。。
    flowfire
        3
    flowfire  
    OP
       2016-05-16 11:10:27 +08:00
    @wizardoz 用了你的方法貌似的确可以。。
    flowfire
        4
    flowfire  
    OP
       2016-05-16 11:12:03 +08:00
    @wizardoz 我又去瞄了一眼当年看的正则教程。。。看起来是我记错了。。。。 ?: 貌似是标准的使用方式。。
    murmur
        5
    murmur  
       2016-05-16 12:33:42 +08:00
    (?:x)
    Matches 'x' but does not remember the match. The parentheses are called non-capturing parentheses
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2278 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 06:15 · PVG 14:15 · LAX 23:15 · JFK 02:15
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.