代码之家  ›  专栏  ›  技术社区  ›  Nick Heiner

很难为.obj文件使用简单的正则表达式

  •  1
  • Nick Heiner  · 技术社区  · 14 年前

    command arg1[ arg2, ... argn]
    

    例如:

    usemtl weasels
    

    f 1/2/3 4/5/6 7/8/9
    

    这是我的正则表达式:

    ^(\\w+)(( \\S+)+)$
    

    Match 0: 'usemtl weasels'
    Match 1: 'usemtl'
    Match 2: ' weasels'
    

    为什么第二组比赛前的空间?它不会在红疹中出现。

    1 回复  |  直到 14 年前
        1
  •  0
  •   tangens    14 年前

    >=1)将给出 th声明的组,而不是 找到第个匹配项。

    你的第二个匹配给你一个前导空白的“黄鼠狼”,因为你的模式包含那个空白。你宣布了你的第二组 (( \\S+)+) 这一组给你第二场比赛。

    如果你把你的图案用在绳子上 a b c d ,您的组0将 a、b、c、d a ,第2组 b c d d ,因为这是第3个声明的(内部)组的最后一个匹配项 ( \\S+) .