正则表达式以匹配Javascript中的版本号

时间:2020-03-02 10:22:39

标签: javascript regex

我正在尝试创建一个正则表达式以匹配版本号,其格式可以为1.2.3.4 它也只能包含一个数字(例如12),也可以包含*(星号)而不是数字。

我尝试如下创建

[\d*]*\.[\d*]*\.[\d*]*\.[\d*]*

这在某种程度上是可行的,但是它必须完全采用这种格式,即它需要具有所有小数点,而要查找的是允许任何数字和*作为版本类型。

可能是无效的情况

1.2.4.5.6.
.
3.4.

有效方案是

12
*
*.*
12.34.5.*
1.4.5.6
3.*.*

有什么帮助吗?

谢谢

1 个答案:

答案 0 :(得分:2)

您可以在Javascript中使用此正则表达式:

^(?:\d+|\*)(?:\.(?:\d+|\*))*$

RegEx Demo

RegEx详细信息:

  • ^:开始
  • (?:\d+|\*):匹配1个以上的数字或*
  • (?:\.(?:\d+|\*))*:用点号后跟1+个数字或*来匹配组。该组可以匹配0次或多次。
  • $:结束