4

对于以下将验证文本框条目的条件,我需要 C# 中的正则表达式:

我应该包含一个 5 位数字或一个 6 位数字。在多个条目的情况下,数字应该用不带空格的竖线字符分隔。示例:34786|235652|12876

我已经尝试了以下 regex ,它们不起作用 丙基:

^\d{5,6}\|?\d{5,6}?$
^[\d{5,6}+][\|?][\d{5,6}?]$
(^\d{5,6}$)|(^\d{5,6}\|?[\d{5,6}*]$)

请帮忙!!

4

2 回答 2

4

尝试这个:

^\d{5,6}(\|\d{5,6})*$
于 2013-08-23T10:53:07.217 回答
4

这应该有效:

^[0-9]{5,6}(\|[0-9]{5,6})*$

解释:

^= 行首

[0-9]= 任何数字(\d也可以)

{5,6}= 5 或 6 次

(...)*= 无论 () 里面是什么,0 次或多次

\|= 管道字符

$= 行尾

总而言之,它是“行首后跟 5 或 6 位数字后跟 [管道字符后跟 5 或 6 位数字] 0 次或多次后跟行尾”

于 2013-08-23T10:54:48.743 回答