【发布时间】:2013-03-04 14:51:06
【问题描述】:
对任何“为什么这个正则表达式不能工作 html!?!”的典型反应问题是“因为 HTML 不是常规语言”。
所以,我很好奇是否有人列出了常见的编程语言列表,这些语言是正则语言,因此适用于正则表达式匹配。我知道有一些方法可以确定一种语言是否是常规语言(逐个案例),但对于复杂的语言,证明也可能相当复杂。我想也许一个快速的语言检查列表会很有用。
我也知道你可以用非常规语言做正则表达式,但它们并不总是可靠的(html 示例)。
【问题讨论】:
-
任何表达能力足以进行“真正”编程(即图灵完备)的编程语言都是非常规的。
-
我不确定这是否是一个好问题,因为它是一个 X 列表,但我看不出它有什么建设性。一种语言是否规则是一个非常明确的属性,所以我无法想象“这个问题会如何引发辩论、争论、投票或扩展讨论”。
-
您在寻找编程语言还是标记语言?
-
对不起,我理解 html 是一种标记语言,而不是一种编程语言。我想我的意思更多的是什么语言(如果有的话)语言(编程语言如 C/Java/Perl/等,查询语言如 SQL/SPARQL/等,甚至标记语言如 HTML 或样式表语言如 CSS)
标签: regex language-agnostic programming-languages regular-language