正则表达式列出已接受的单词

时间:2010-01-19 16:12:15

标签: regex

我需要一个正则表达式来列出可接受的版本号。即。说我想接受"V1.00""V1.02"。我已经尝试了这个"(V1.00)|(V1.01)"几乎可以工作但是如果我输入"V1.002"(这可能是由于我正在使用的奇怪的版本号),我仍然得到一个匹配。我需要匹配确切的字符串。

有人可以帮忙吗?

3 个答案:

答案 0 :(得分:4)

你在“V1.002”上获得匹配的原因是因为它看到子字符串“V1.00”,这是你的正则表达式的一部分。您需要指定没有更多要匹配的内容。所以,你可以这样做:

^(V1\.00|V1\.01)$

获得相同结果的更简洁方法是:

^(V1\.0[01])$

答案 1 :(得分:3)

这样做:

^(V1\.00|V1\.01)$

.需要转义,^表示必须位于文字的开头,$必须位于文字的末尾。

答案 2 :(得分:0)

我会使用'^'和'$'来标记字符串的开头和结尾,如下所示:

^(V1\.00|V1\.01)$

这样整个字符串必须与正则表达式匹配。

相关问题