【问题标题】:Regular expression to form words with exactly 4 a's or 5 b's正则表达式来形成恰好有 4 个 a 或 5 个 b 的单词
【发布时间】:2017-08-26 20:58:55
【问题描述】:

在形式语言理论(使用 Kleene Star)中,如果我想创建一个正则表达式来定义包含集合 {a ,b} 上的所有单词的语言,恰好有 4 个 a 或 5 个 b。

(注意我的书用 + 表示 OR,* 表示 0 或多个)

到目前为止我有:

[a(b*)aaa + aa(b*)aa + aaa(b*)a + aaaa(b*) + abababab + babababa + (b*)aaaa]

+

[b(a*)bbbb + bb(a*)bbb + bbb(a*)bb + bbbb(a*)b + bbbbb(a*) + (a*)bbbbb + bababababa + ababababab]

有没有缩短的方法来做到这一点?理论似乎不允许对字母使用 min 和 max。

【问题讨论】:

    标签: regular-language


    【解决方案1】:

    您的表达方式并不适合所有可能性(例如babababababbbb)。搜索到的表达式应该更容易:

    [ b*ab*ab*ab*ab* + a*ba*ba*ba*ba*ba* ]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-11-27
      • 1970-01-01
      • 2021-07-15
      • 1970-01-01
      相关资源
      最近更新 更多