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

正则表达式如何在匹配结果之上再排除一组字符串

  •  
  •   older · 2013-11-20 08:52:41 +08:00 · 3030 次点击
    这是一个创建于 4017 天前的主题,其中的信息可能已经有所发展或是发生改变。
    1980 浙江 五王
    1981 广东 张海
    1982 上海 李四
    1982 上海 李四
    1985 上海 李四
    1990 北京 张二


    如何匹配1985之后的行,然后在1985之上又不包括上海的
    198[0-5] .+\n 这样不能排除上海
    198[0-5] .[^上海]+\n 这样上 和 海分成两个字符匹配了。导至第二行的张海也排除了。
    5 条回复    1970-01-01 08:00:00 +08:00
    SAGAN
        1
    SAGAN  
       2013-11-20 08:57:38 +08:00   ❤️ 1
    用预查

    198[0-5]\s+(?!上海)
    alsotang
        2
    alsotang  
       2013-11-20 09:56:39 +08:00
    补充楼上


    andy12530
        3
    andy12530  
       2013-11-20 09:59:24 +08:00
    能不能说清题目?
    什么叫 “匹配1985之后的行”,是完全匹配 1985,还是说匹配 >1985 ??
    older
        4
    older  
    OP
       2013-11-20 11:08:26 +08:00
    @andy12530 小于1985的行
    caomu
        5
    caomu  
       2013-11-20 12:49:32 +08:00
    @alsotang 这是什么的界面?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1331 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 23:42 · PVG 07:42 · LAX 15:42 · JFK 18:42
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.