正则表达式是什么?

时间:2016-10-07 19:22:14

标签: c regex

这是我给出的问题:编写一个正则表达式来识别具有任意数量的a,b和c的字符串,其顺序为abc。但是,任何数量的d's都可能属于a,b和c。

正例:

  

dddaddbcdd
  DDDD

反面例子:

  

dabcddadbdd

因为第二个序列开始但没有完成。

  

ddcdd因为c没有领先ab
  ddaddbddcaddbcdd因为2个abc序列

这是我尝试过的:

[^abc]+(a|b|c)*[^abc]

1 个答案:

答案 0 :(得分:0)

如果我理解你的问题,那么a必须在bb之前c,如果其中任何一个存在的话。此外,在任何地方都可能会有一些d

如果是这种情况,那么你可以使用这样的正则表达式:

^d*(?:a+d*b+d*c+d*)?$

<强> Working demo

相关问题