Programming languages 解释这是什么语言或语法
我们试图破译一些规则语法,但不确定其来源 以下是一个例子:Programming languages 解释这是什么语言或语法,programming-languages,Programming Languages,我们试图破译一些规则语法,但不确定其来源 以下是一个例子: (CARS->TYPE='C').and.(CARS->CD_CODE<>'').and.('|'+INVOICE->TYPE+'|'$'|AAA|').and.('|'+SUBSTR(INVOICE->TYPE,1,2)+'|'$'|11|') (CARS->TYPE='C')。和(CARS->CD_代码“”)。和。(“|”+发票->类型+“$”|“$”| AAA |')。和。(“|”+SUBST
(CARS->TYPE='C').and.(CARS->CD_CODE<>'').and.('|'+INVOICE->TYPE+'|'$'|AAA|').and.('|'+SUBSTR(INVOICE->TYPE,1,2)+'|'$'|11|')
(CARS->TYPE='C')。和(CARS->CD_代码“”)。和。(“|”+发票->类型+“$”|“$”| AAA |')。和。(“|”+SUBSTR(发票->类型,1,2)+“|”$”| 11 |)
具体来说,我们试图理解
|
和$
。有没有人能告诉我他们是否见过与源语言相似的和逃避的语言,或者对
和$
的正确解释?我从这些语言的经验中可以告诉你的不是BASIC、Pascal、C、Java、perl、Python、COBOL或FORTRAN。提及您正在使用的规则引擎可能会有所帮助
正在执行的操作看起来很像匹配操作
“|”看起来像管道字符|的字符串文字,给定上下文,它可能在类似CSV的平面文件格式数据库中用作分隔符。例如,明文可能类似于| INVOICETYPE | something | AAA|
不过,我不能帮你处理$operator。这可能是一个变量替换或匹配任何操作,甚至是一个串联器。我猜:Fortran
现在这是一门相当复杂的语言。我不相信它有->
操作符,但它似乎有=>
。也许这是您代码段中的供应商扩展
pro Fortran的证据是
。and.
运算符。看起来像Fortran ish语言。不过,->
不是标准的操作员。|
只是一个字符串(看起来不像操作符),但是$
当然看起来像操作符,可能是用于指定字符串格式的东西?从它总是出现在字符串组之间这一事实推断出这个C。从它的语法我们可以看出它是一种“现代”语言。记住“现代”好吧;)
与cobol和汇编语言相比,它们非常现代
(CARS->TYPE='C')。和(CARS->CD_代码“”)。和。(“|”+发票->类型+“$”|“$”| AAA |“)。和。(“|”+SUBSTR(发票->类型,1,2)+“|”$”| 11 |)
伪代码可以是:
(if car type is 'C'
and
if car cd_code is not empty
and
if invoice type is 'AAA'
and
if invoice type first 2 letters are '11')
then return true
我对使用$的猜测是:
= and <> are only when compare against a character
$ when compare array of character, i.e. strings.
=和仅在与字符进行比较时才有效
$when比较字符数组,即字符串。
(我不知道输出是什么,因为它将整个发票类型与AAA进行比较,甚至与前两个字母11进行比较。可能您在提交之前编辑了代码?)
Fortran 90可能是一个猜测,但即使是DBase III也可能是这样
数据库链接:
Fortran链接:
对于有关管道的数据库
如果传递参数,则它们必须由| |(管道)分隔。即使未传递任何参数,也需要管道| |。如果您传递参数,它们将被分隔在| |中。很久以前,有很多语言的语法与之类似。它是FORTRANish语言,但更可能是其他语言。(看起来有点像数据库。但不是COBOL,当然也不是RPG。不过可能是其他报表生成器语言。)老实说,您可能应该给出域,这可能有助于指出运算符的含义。它可以是从古代到带有自定义中缀运算符的Coq。所以我们认为答案1几乎是100%,但最后一个peice是,所以我们认为答案1几乎是100%,但最后一个是,(“|”+SUBSTR(发票->类型,1,2)+“|”$”| 11 |)-在这一部分中,规则是否表示$=包含或以发票类型的某些信息开头或类似信息为真-现在知道它始终是一个3位数的数字,每个数字1-9指定发票类型的一部分。因此,112=经销商发票上有一些细节,而219或431等于完全不同的东西。因此,我们要证明的假设是-这条规则应该说明发票代码是否以11x开头?FORTRAN是否会使用
/=
或.ne.
而不是
?
= and <> are only when compare against a character
$ when compare array of character, i.e. strings.