自定义正则表达式
本文关键字:正则表达式 自定义 | 更新日期: 2023-09-27 18:20:07
嗨,我需要匹配这种格式的
N - Number
NN,NN
或
NN.NN
还有
N,N and N.N
和组合
N.NN and N,NN or NN,N and NN.N
这是您的正则表达式:
'd{1,2}[.,]'d{1,2}
请参阅此处的操作:http://regexr.com?2vman
这是一个略有不同的版本:
'd'd?[.,]'d'd?
请参阅此处的操作:http://regexr.com?2vmaq
如果你还想匹配出一个十进制,使用这个:
'd'd?[.,]?'d{0,2}
请参阅此处的操作:http://regexr.com?2vml4
怎么样:
'd{1,2}(?:[.,]'d{1,2})?
解释:
'd{1,2} : one or two digits
(?: : start non capture group
[.,] : . or ,
'd{1,2} : one or two digits
)? : end group, optional
为什么匹配它?
只需删除逗号并使用实际数字:
Regex.Replace("8,675,309.02", "(,)", string.Empty) // Outputs 8675309.02
如果这是一个验证场景,那么使用int.Parse会让您知道它是否有效。
我会选择这样的东西:
Regex regex = new Regex(@"'d{1,2}['.,]'d{1,2}");