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

特定长度的regexp忽略指定字符

  •  0
  • manuna  · 技术社区  · 15 年前

    假设我们有一些定义长度的字符串,可以包含一些分隔符,这些分隔符只用于用户友好的视图。

    示例:9位字符串“123456789”,可以像“123456789”或“123.456.789”或“1-234-5-67-89”或“123 456 789”那样显示。

    我需要的是一个regexp,它可以忽略分隔符来计算长度。 类似的东西 [\d|,\.\-\s]{9} ,但只将\d计数为9(允许使用任何数量的分隔符字符…可选,分隔符字符不应在一行中超过两个)

    2 回复  |  直到 15 年前
        1
  •  4
  •   kennytm    15 年前
    ^[-.,\s]*(?:\d[-.,\s]*){9}$
    

    ^[-.,\s]{0,2}(?:\d[-.,\s]{0,2}){9}$
    
        2
  •  0
  •   Gumbo    15 年前