gpt4 book ai didi

c# - 特殊情况的正则表达式

转载 作者:太空宇宙 更新时间:2023-11-03 18:37:48 25 4
gpt4 key购买 nike

我需要为以下场景创建一个正则表达式。

它只能有数字和一个点或逗号。

第一部分可以有一到三位数。第二部分可以是点或逗号。第三部分可以有一位到两位数。

有效的场景是

123,12
123.12
123,1
123
12,12
12.12
1,12
1.12
1,1
1.1
1

到目前为止我想出了这个表达式

\d{1,3}(?:[.,]\d{1,2})?

但是效果不是很好。例如,输入 11:11 被标记为有效。

最佳答案

你需要输入anchors围绕你的表情:

^\d{1,3}(?:[.,]\d{1,2})?$

^ 将匹配字符串的开头

$ 会匹配字符串的结尾

如果缺少这些 anchor ,它将部分匹配您的字符串,因为最后一部分是可选的,意味着在“11:11”它可以匹配冒号之前的数字,第二个匹配将匹配冒号之后的数字冒号。

关于c# - 特殊情况的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12836573/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com