regular-language - 编写描述集合的正则表达式
问题描述
左 {w| w 包含任意数量的子串 00 和 11,其中一个 1 出现在 w 中的任何位置}
我的猜测是,因为 1 可以在任何地方,所以 Σ*001Σ*1Σ*11Σ* 应该是正则表达式。有什么想法或更正吗?
解决方案
将语言定义分解成几个部分:
L := { w |
w contains any number of substrings 00 and 11
w contains one "1"
}
第一部分实际上没有任何意义。“任意数量的子字符串 00 和 11”可以不包含子字符串。这并不是说字符串必须至少包含其中一个。这相当于Σ*
.
第二部分说字符串必须包含1
在其中的某个地方:Σ*1Σ*
推荐阅读
- c++ - 为什么 std::fstream 在 Windows 上比 WriteFile 快
- c - C 指针复制
- android - Android 找不到方法“implementation()”
- php - PHP 7.4.25 - ldap_search LDAP 错误:[-7] 错误的搜索过滤器
- javascript - 没有替换/正则表达式/包含的元音大写
- c# - Puppeteer Sharp 项目在 DownloadAsync() 时意外终止
- python - 是否有 API 可用于为 AWS Quicksight 数据集配置/触发或创建新的计划增量刷新?
- flutter - 在颤动中发送多部分请求中的对象
- pytorch - 为什么 torch.device('cuda', 0) 不起作用,而 torch.cuda.device(0) 是吗?
- asp.net-core - Masstransit 按顺序执行事件