代码之家  ›  专栏  ›  技术社区  ›  Shpigford

regex有什么用?

  •  0
  • Shpigford  · 技术社区  · 14 年前

    我有这个绳子:

    videos/000/000/021/10f43ddb37472ee4bb57_original.m4v
    

    我需要这个部分:

    videos/000/000/021/
    

    所以格式是:

    videos/{3 digit number (000-999)}/{3 digit number (000-999)}/{3 digit number (000-999)}/
    
    3 回复  |  直到 14 年前
        1
  •  4
  •   BeemerGuy    14 年前
    videos/(\d{3}/){3}  
    

    含义: "videos/" 后跟三位数字和三次正斜杠

        2
  •  1
  •   John Kugelman Michael Hodel    14 年前
    ^videos/(\d{3})/(\d{3})/(\d{3})/
    

    说明:

    • \d 匹配一个数字。
    • {3} 需要前一项中的三项。
    • ^ 将匹配锚定在字符串的开头,使“videos/111/222/333/”匹配,但“othervideos/111/222/333/”不匹配。
    • 圆括号可用于捕获这三个数字,以便在以后的步骤中对它们进行检查;在某些语言中,它们将作为 $1 , $2 ,和 $3 .
        3
  •  0
  •   BoltClock    14 年前
    videos/([0-9]{3}/){3}
    

    如果您的正则表达式风格需要正斜杠分隔符,

    /videos\/([0-9]{3}\/){3}/