正则表达式匹配数字

时间:2016-02-08 10:35:26

标签: regex

我的正则表达知识很差但是我已经弄清楚了以下表达式的作用,但不知道如何修改它。

这是表达式^[0-9]{6,15}$

匹配6个数字并确保字符串末尾没有其他内容,例如它匹配123456

但是我需要它来匹配123456和123456-1

1 个答案:

答案 0 :(得分:1)

让我们分解一下:^[0-9]{6,15}$

  • ^:行首
  • [0-9]:代表任何字符的字符类 字符范围为0-9。
  • {6,15}:匹配6到15 (包括我认为)以前的事情的发生(在 这种情况下它是一个角色类)。
  • $:行尾

我们希望为-[0-9]之类的内容添加可选匹配项。我们可以使用?添加可选匹配。

现在一起:

^[0-9]{6,15}(-[0-9])?$

(-[0-9])?表示“可选地匹配短划线后跟单个数字”。