regular-language相关内容

为什么 L={wxw^R|w, x 属于 {a,b}^+ } 是正则语言

使用泵引理,我们可以很容易地证明语言L1 = {WcW^R|W ∈ {a,b}*}不是常规语言.(字母是{a,b,c};W^R代表反向串W) 然而,如果我们将字符 c 替换为 "x"(x ∈ {a,b}+),例如 L2 = {WxW^R|x,W∈{a,b}^+},那么L2是正则语言. 你能给我一些想法吗? 解决方案 如果我们用 x 替换字符 c,其中 (x ∈ {a,b}+ ..
发布时间:2021-12-29 12:55:36 其他开发

两种不同字母的语言的交集是什么?

我对此进行了一些谷歌搜索,但没有真正确定的弹出. 假设我有两种语言 A 和 B. A = { w 是 {a,b,c}* 的子集,使得 w 的倒数第二个字符是 b } B = { w 是 {b,d}* 的子集,使得最后一个字符是 b } 人们如何定义这一点?我认为字母表将是两者的结合,使其成为 {a,b,c,d} 但除此之外,我不知道如何对此进行 DFA. 如果有人能对 ..
发布时间:2021-09-07 18:31:11 其他开发

正则表达式 0(0+1)*0+1(0+1)*1 的 DFA 是多少?

这是我画的 DFA- 正确吗? 我很困惑,因为 q4 状态对于相同的输入符号有 2 不同的转换,这违反了 DFA 的规则,但我想不出任何其他解决方案. 解决方案 您的 DFA 不正确. 您的 DFA 完全错误,所以我不发表评论 RE 的 DFA: 0(1 + 0)*0 + 1(1 + 0)*1 语言说明:如果字符串以0开头,则应该以0结尾,或者如果字符串以1开头它应该以 ..
发布时间:2021-09-07 18:30:22 其他开发

生成正则表达式

通常在我们的工作中,我们在 capture 或 match 操作中使用正则表达式. 但是,可以使用正则表达式 - 至少手动 - 生成与正则表达式匹配的合法句子.当然,有些正则表达式可以匹配无限长的句子,例如表达式.+. 我有一个问题,可以通过使用正则表达式语句生成算法来解决. 在伪代码中,它会这样操作: re = generate("foo(bar|baz)?", max_ma ..
发布时间:2021-07-06 19:59:32 其他开发

什么是常规语言?

我正在尝试理解语言级别的概念(常规、上下文无关、上下文敏感等). 我可以很容易地查到这一点,但我发现的所有解释都是一堆符号和关于集合的内容.我有两个问题: 您能否用文字描述什么是常规语言,以及这些语言有何不同? 人们从哪里学习理解这些东西?据我了解,它是形式数学?我在大学有几门课程使用了它,几乎没有人理解它,因为导师只是假设我们知道它.我在哪里可以学习它,为什么人们“期望"在这么 ..

正则表达式中的模运算符

我正在尝试编写一个正则表达式来接受任何二进制字符串,唯一的标准是 0 的数量不是 3 的因数([0 的数量] % 3 != 0).如何实现? 解决方案 如果您的正则表达式风格支持 递归模式,你可以使用这个: ^(1*01*)(?1)?(?:(?1)(?1)(?1))*1*$ 如果不是,则将所有 (?1) 替换为 (1*01*) 说明: ^ : 字符串的开始( : 开始第 1 组 ..
发布时间:2021-06-03 19:17:15 其他开发

JavaScript正则表达式没有\ p {L}吗?在JS正则表达式中使用Unicode

我本想在x时添加a-zA-ZáàâäãåçéèëëíîïïnóòôöõúùûüýÿæœÁÀÂÅÃÅÇÉÈÊËÍÌÎÏÑÓÒÔÖÕÚÙÛÜÝÜÝŸÆŒ,但我觉得这很丑陋.因此,我尝试 \ p {L} ,但它在JavaScript中不起作用. 有什么想法吗? 我的实际正则表达式: [A-ZA-ZáàâäãåçéèêëíìîïñóòôöõúùûüýÿæœÁÀÂÄÃÅÇÉÈÊËÍÌÎÏÑÓÒÔ ..
发布时间:2021-05-19 20:28:48 前端开发

在JAVA中按特定字词拆分字符串

字符串S ="3乘3加3 3 1" 我想得到两个字符串数组一个是{"multiply","add","add"}另一个是{"3","3","3",1} 我如何得到它?我尝试使用 字符串运算符[] = s.split("[0-9] +");字符串操作数[] = s.split(“(?? add | multiply)"); 但是,它不起作用. 解决方案 您可以使用Java ..
发布时间:2021-05-18 21:09:47 Java开发

用常规语言创建语法

我在解决这种特殊语言的语法时遇到一些问题,希望您能提供帮助:语言是:Σ= {x,y,z}A = {w |w∈Σ^ ∗∧| w | _x mod 2> = | w | _y mod 2} 因为这是如此困难,所以我首先尝试将所有属性放在一个语法中,所以| w | _x mod 2> = | w | _y mod 2和w∈Σ^ ∗,但是没有得到像cacbcacb这样的所有组合等等 我得到的是 ..
发布时间:2021-04-24 19:38:05 其他开发

如何确定上下文无关的语法是否描述了常规语言?

鉴于任意上下文无关的语法,我如何检查它是否描述了常规语言? 我不是在寻找考试“技巧".我正在寻找可以编写的万无一失的机械测试. 如果有帮助,这是我可能会收到的CFG示例.具体来说,请注意,答案必须比查找左或右递归复杂得多,因为存在另一种递归并不自动表示语法是不规则的. S:A B C D X答:A:B:b BB:C:c C cC:D:D d DD:dX:x YX:Y:y XY: ..

确定语言是否上下文无关

让我们说您有一种语言L,并且您想确定它是否与上下文无关.与常规语言相交的上下文无关语言是上下文无关的.足以证明L是上下文无关的吗? 含义 L相交P = T其中P是常规语言,T是上下文无关的.这是否意味着L是上下文无关的? 解决方案 否,您的声明不是是.请考虑以下反例: L = {0n1n2n | n > 0}, P = T = Ø.显然,我们有L ∩ P = L ∩ Ø ..

[af]?lex正则表达式的区别

我不知道如何执行此操作,而且我没有在线上找到有关如何执行此操作的好资源[.]我正在尝试采用带注释的EBNF生产规则,该规则是两个正则表达式之间的区别并把它变成一个(na | f?)lex语法规范规则[.]问题是我看不到通常能做到这一点的方法[.] {3},有一种方法可以像克莱恩代数一样使用克莱恩代数来做到这一点.您可以在上下文无关的语法中使用带交替符的空匹配[?] 解决方案 EBNF生产规 ..
发布时间:2020-11-08 20:59:31 其他开发

证明上下文无关语法是规则的

我知道,要证明一种语言是非常规语言,可以使用泵激引理。我想我知道它是如何工作的,但是当涉及到上下文无关语法是(或者不是很规则)时,我遇到了很大的问题。 以下是我无法理解如何显示常规(或非常规)CFG的示例: i)S→NP VP ii)NP→DET N iii)VP→电视NP iv)N→NN v)N→AN vi)NP→玛丽|约翰 vii)DET→一个|他的| b ..
发布时间:2020-10-08 23:31:16 其他开发

是否存在表示正则表达式的正则语言?

具体来说,我注意到正则表达式本身不是正则语言。因此,我无法使用正则表达式来解析给定的正则表达式。因为正则表达式本身的语言是上下文无关的,所以我需要使用解析器。 有没有办法以表示结果字符串可以表示正则表达式的方式 注意:我的问题不是关于是否有一个与当前regexe语法匹配的regexp,而是是否存在一个“表示形式”对于我们今天所知的正则表达式(可能不像我们今天所知道的那样整洁)可以使用正 ..
发布时间:2020-10-08 23:29:43 其他开发

普通英语的乔姆斯基阶层

我试图找到乔姆斯基提出的形式语法的四个层次(无限制,上下文相关,上下文无关,常规)的简单(即非正式)解释。 自从我学习形式语法以来已经有一个时代了,各种定义现在让我难以理解。需要明确的是,我不正在寻找随处可见的正式定义(例如,此处和此处-我可以在Google以及其他任何人身上使用Google,甚至可以是任何形式。取而代之的是,我希望找到的是简洁明了的解释,它们并没有为了完整性而牺牲清晰度。 ..