正则表达式判断4位数字或6位数字 不好用 谢谢

Regex re = new Regex("^[\d]{4}|[\d]{6}$", RegexOptions.None);

我语言是C#

 (^\d{4}$)|(^\d{6}$)
两个都要包含^$否则会匹配4个或4个以上的。

另外,lz采纳率有点低,如果回答满意,麻烦顺手点下采纳,谢谢

^[0-9]{4,6}$

\要转义 ---

用这个:

 Regex re = new Regex("^(\\d{4}){1}(\\d{2})?$");

我已经很久不用C#语言了,javascript的话我觉得应该是 var reg = /\d{4,6}/,\w 匹配字母数字和下划线
\s匹配空格
\d 匹配数字
^表示开始的字符
$表示结束的字符

\d{x} x 表示匹配x位数字,x必须是数字
\d{x,y} y表示匹配x到位数字,y也必须是数字
[ ] 中括号表示里面的集合表示或者,只要满足其中一个条件就匹配成功

I 执行对大小写不敏感的匹配
g 执行全局匹配
*表示重复零次或者更多次

  • 表示必须出现一次或者多次 ?表示出现零次或者一次 [a-zA-Z]表示匹配所有大小写字母 [a-z]表示匹配小写字母