我正在自学正式语言(Aho's,Hopcroft),但我很难使用正则表达式。
我已经能够处理简单的任务,但这一项已经构成了挑战,至少对我来说是这样。如果你不能算到现在怎么解决这个问题,我不习惯这种类型的计算。
一定有一些属性或东西可以让我概括答案,我可以把它作为一个常规表达式。
到目前为止,我已经设计出至少有 2 到 3 种情况:
- 如果 sum=3k,则求和 mod3=0
- 如果 sum=3k+1,则求和 mod3=1
- 如果 sum=3k+2,则求和 mod3=2。
但是我已经意识到,可能有很多组合会发生求和,所以找不到正则表达式必须遵循的模式。
ex的字符串。(大括号是为了便于阅读)如果总和是字符串中的“10”,则{122211}0末尾有零。情况可能是这样的,所以必须在最后,依此类推。{sum=3k}0{1222111}1{sum=3k+1}
这可能是解决问题的正确途径,也可能不是解决问题的正确方法,但我愿意接受任何建议,非常感谢任何帮助。