这是我给出的问题:编写一个正则表达式来识别具有任意数量的a,b和c的字符串,其顺序为abc。但是,任何数量的d's都可能属于a,b和c。
正例:
dddaddbcdd
DDDD
反面例子:
dabcddadbdd
因为第二个序列开始但没有完成。
ddcdd因为c没有领先ab
ddaddbddcaddbcdd因为2个abc序列
这是我尝试过的:
[^abc]+(a|b|c)*[^abc]
答案 0 :(得分:0)
如果我理解你的问题,那么a
必须在b
和b
之前c
,如果其中任何一个存在的话。此外,在任何地方都可能会有一些d
。
如果是这种情况,那么你可以使用这样的正则表达式:
^d*(?:a+d*b+d*c+d*)?$
<强> Working demo 强>