正则表达式如何精确匹配 3 个数字

我想要这些情况为真:


.123

.000

.999

对于这些情况想要 false:


123

a123

.123a

.1234

a.123

这是我当前的正则表达式:


match, _ := regexp.MatchString("[.]{1}[0-9]{3}", ".123a")

fmt.Println(match)

但这种模式不会返回false:


.123a

.1234

a.123

什么是正确的正则表达式?


holdtom
浏览 210回答 2
2回答

喵喵时光机

该模式很简单:^\.\d{3}$与...一样:^\.[0-9]{3}$这是:^     // from the beginning\.    // a single dot\d{3} // a digit (exactly 3 times)$     // until the end of the string\不过,您必须转义该符号:^\\.\\d{3}$正则表达式演示。去演示吧。

DIEA

您很接近,请尝试限制匹配^[.]{1}[0-9]{3}$查看在线演示
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go