标签: regular-language

如果 L* 是正则的,那么 L 是正则的吗?

我试图寻找答案,但得到的答案相互矛盾,所以我不确定。我知道反之亦然,如果 L 是正则,那么 L* 在闭包下也是正则。

我想如果 L* 是规则的,那么 L 是规则的,因为 L* 的子集应该是规则的,并且 L 是该子集的一部分。

regular-language

4
推荐指数
1
解决办法
1万
查看次数

用正则表达式匹配产品尺寸

我试图用正则表达式匹配长度宽度和高度。

我有以下情况

Artikelgewicht3,7 Kg
Produktabmessungen60,4 x 46,5 x 42 cm

or

Artikelgewicht3,7 Kg
Produktabmessungen60 x 46 x 42

or

Artikelgewicht3,7 Kg
Produktabmessungen60 x 46
Run Code Online (Sandbox Code Playgroud)

第二种情况可以与 匹配(\d+) x (\d+) x (\d+),效果很好。

我进一步尝试将第一个和第三个案例与(\d+)(\\,\d+)? x (\d+)(\\,\d+)? x (\d+)(\\,\d+)?.

任何建议我做错了什么?

regex pattern-matching regular-language

4
推荐指数
1
解决办法
2294
查看次数

bash 中意外标记“(”附近出现语法错误

我想使用 grep 和正则表达式来搜索文本文档。\n当我输入以下内容时:

\n\n
grep -o ((D|d)ie|(D|d)as|(D|d)e(r|n|m|s)|(ei|Ei)(n|ne|nen|nem|ner|nes)) [A-Z\xc3\x84\xc3\x96\xc3\x9c][A-Za-z\xc3\xa4\xc3\xb6\xc3\xbc]* document.txt\n
Run Code Online (Sandbox Code Playgroud)\n\n

我明白了:

\n\n
-bash: syntax error near unexpected token `('\n
Run Code Online (Sandbox Code Playgroud)\n\n

我已经尝试将正则表达式放在引号中。通过这样做,我没有收到错误,但也没有找到任何东西。感谢你们对我的帮助。

\n\n

例如,我的文档中有以下句子:

\n\n
Der Mann und die Frau haben ein Haus.\n
Run Code Online (Sandbox Code Playgroud)\n\n

我想提取:

\n\n
Der Mann\ndie Frau\nein Haus\n
Run Code Online (Sandbox Code Playgroud)\n

unix bash shell grep regular-language

4
推荐指数
1
解决办法
3847
查看次数

如何用空格分割字符串,并保持逗号分开?

我想把一个句子分解成词。如果它只包含空格,则.split(/\s+/)有效。

但是如何也可以用逗号分割,并将逗号保留在结果数组中?

我试过这样的事情,但它不起作用:

.split(/(?=,)|(?!=,)|\s/)
Run Code Online (Sandbox Code Playgroud)

示例输入:

"this,is, a test"
Run Code Online (Sandbox Code Playgroud)

预期输出:

["this", ",", "is", ",", "a", "test"]
Run Code Online (Sandbox Code Playgroud)

我怎么了?甚至可以只使用正则表达式吗?

javascript regex split regular-language

4
推荐指数
1
解决办法
91
查看次数

无上下文语言的闭包属性以及与常规语言的交集

无上下文语言和常规语言的交集始终是无上下文的,但是在集合交集下不关闭无上下文语言.任何人都可以解释为什么如果所有常规语言都没有上下文,两个定理都是正确的(相反的情况并非总是如此)?

context-free-grammar regular-language

3
推荐指数
1
解决办法
4496
查看次数

是**(a*)*?

快速问题,如果a是正则表达式那么这是真的a* = (a*)*吗?

(a*)*一个有效的表达?如果是,那么任何人都可以解释为什么它是一样的a*?我在这里问道歉,但我找不到谷歌的任何东西.

algorithm regular-language

3
推荐指数
1
解决办法
808
查看次数

如果语言L的每个子集都是常规的,那么L是常规的吗?

我知道上述定理的逆是不正确的,即如果L是规则的,那么L的每个子集都不需要是规则的

computation-theory regular-language

3
推荐指数
1
解决办法
9186
查看次数

为什么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 是一个普通的语言.

你能给我一些想法吗?

automation pumping-lemma dfa nfa regular-language

3
推荐指数
1
解决办法
1万
查看次数

哪些编程语言是常规的?

对任何"为什么不是这个正则表达式工作html的典型回应!?!" 问题是"因为HTML不是常规语言".

所以,我很好奇是否有人有常用语言的常用编程语言列表,因此适用于正则表达式匹配.我知道有一些方法可以确定一种语言是否规则(逐个案例),但对于复杂的语言,证明也可能非常复杂.我想也许快速检查一下语言可能会很有用.

我也知道你可以用非常规语言做正则表达式,但它们并不总是可靠的(html示例).

regex language-agnostic programming-languages regular-language

3
推荐指数
1
解决办法
1578
查看次数

正则表达式,用于重复3次或更多次字符串的URL过滤

我正在使用正则表达式(\b\w+\b)\W+\1{3,}来过滤重复三次或更多次字符串的网址.我想(\b\w+\b)\W+\1{3,}还是(\b\w+\b)\W{3,}+\1但没有帮助

http://rubular.com/r/6IyCPyBiuW - > (\b\w+\b)\W+\1- >这可以找到重复多次的单词,但我有兴趣找到重复三次以上的单词.

http://rubular.com/r/O9NcobUsTX - > (\b\w+\b)\W+\1{3,}- >这不能找到重复三个或更多的单词

regex regular-language

3
推荐指数
1
解决办法
1614
查看次数