V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
haocity
V2EX  ›  问与答

正则表达式中^的问题

  •  
  •   haocity · 2016-11-02 14:51:22 +08:00 · 2022 次点击
    这是一个创建于 2941 天前的主题,其中的信息可能已经有所发展或是发生改变。

    [^z]表示除了 z 以外的字符
    [^zx]表示什么? 我是想表示除'zx'以外的字符而不是 z 和 x 以外的字符 如何来写

    6 条回复    2016-11-02 23:55:38 +08:00
    imn1
        1
    imn1  
       2016-11-02 15:09:51 +08:00
    本站搜索 正则 排除,带上我的 nick
    或 google 搜也行,回复过起码三次了
    Lonely
        2
    Lonely  
       2016-11-02 15:10:53 +08:00
    自己搜一下或者手动试一下不行吗
    haocity
        3
    haocity  
    OP
       2016-11-02 16:48:59 +08:00
    @imn1
    @Lonely
    抱歉 当时搜的关键字有问题 没有搜到
    很抱歉 感谢两位前辈 以后肯定善用搜索
    mcfog
        4
    mcfog  
       2016-11-02 17:14:22 +08:00
    我想说的是 lz 你得搞清楚什么是字符
    LazyZhu
        5
    LazyZhu  
       2016-11-02 17:24:05 +08:00   ❤️ 1
    SoloCompany
        6
    SoloCompany  
       2016-11-02 23:55:38 +08:00   ❤️ 1
    这其实是正则的死穴吧
    这种需求非常不适合用正则这种模式匹配的工具来解决
    更别说很多正则的实现(如 js )都不支持 backreference
    如果仅仅是 xy 两个字符的话,比较简单的解决办法是
    ([^xz]|x[^z]|[^x]z)* 来代替,但如果要排除匹配的模式比较长的话就没什么好办法了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   974 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 20:52 · PVG 04:52 · LAX 12:52 · JFK 15:52
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.