用于字符序列的正则表达式

时间:2013-09-10 08:08:36

标签: regex

我无法找到只接受以下字符序列的正则表达式:

  

D,D0,D00,D00D,D00D0,D00D00,D00D00D,D00P,D00P0,D00P00,   D00P00R,D00P00R0,D00P00R00等......

这就是我做的事情

^D$|^D0$|^D00([DPR]0{0,2})*$

但是这也接受像

这样的字符串
  

D00DD,D00DDD,D00PPP

4 个答案:

答案 0 :(得分:2)

这应符合您的要求:

^D(00[DPR])*0{0,2}$

答案 1 :(得分:1)

只有最后的零应该是0到2,其他所有的都应该是2。

这个正则表达式应该这样做:

^D(00D)*0{0,2}$

上述内容不需要检查DD0

Test

答案 2 :(得分:0)

/d(?=0{0,2})+0{0,2}+/对于javascript,您永远不需要^D$|^D0$|^D00

答案 3 :(得分:0)

您可以使用:

^D0{0,2}$|^(D0{1,2})+D?$