我正在尝试创建一个正则表达式以匹配版本号,其格式可以为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.*.*
有什么帮助吗?
谢谢
答案 0 :(得分:2)
您可以在Javascript中使用此正则表达式:
^(?:\d+|\*)(?:\.(?:\d+|\*))*$
RegEx详细信息:
^
:开始(?:\d+|\*)
:匹配1个以上的数字或*
(?:\.(?:\d+|\*))*
:用点号后跟1+个数字或*
来匹配组。该组可以匹配0次或多次。$
:结束