2013-04-18 7 views
5

我々はいくつかのルール構文を解読しようとしており、その起源を確信していません。ここでこれはどの言語か構文を解読します

は一例です:

(CARS->TYPE='C').and.(CARS->CD_CODE<>'').and.('|'+INVOICE->TYPE+'|'$'|AAA|').and.('|'+SUBSTR(INVOICE->TYPE,1,2)+'|'$'|11|') 

具体的に我々は|$を理解しようとしています。似たようなことを見て、元の言語に遭遇した場合や、|$の正しい解釈を逃れた場合、誰にでも教えてください。

+0

旧式の言語には、それに似た構文を持つ多くの言語がありました。それはFORTRANishですが、もっと可能性があります。 –

+0

(まあまあのデータベースだと思うが、COBOLではなくRPGではないが、他のレポートジェネレータ言語かもしれない) –

+0

正直なところ、おそらくドメインを与えるべきで、それは演算子の意味を指すのかもしれない。カスタムインフィックス演算子を使用して古代からCoqまでのあらゆるものが可能です。 –

答えて

1

構文から、「現代的」な言語であると言えるでしょう。大丈夫 "現代" を覚えておいてください;)

substr 
.and. 
-> 

は、COBOLや組み立ての言語と比較して、かなりモダンです。

(CARS-> = 'C' タイプ)と(CARS-> CD_CODE <> '')と(。。 '|。。' + INVOICE-> TYPE + '|' $ '| AAA |' ).AND( '|' + SUBSTR(INVOICE-> TYPE、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. 

(私は出力がどのようなものかわかりません、それは請求書の種類全体をAAAと比較し、最初の2文字は11であっても比較します)。)

Fortran 90は、推測になりますが、さらにDBase IIIかもしれません。

のdBASEリンク: http://lynnbob.com/bob/articles/DBASEIIIPlusLevel2.htm

Fortranのリンク:パイプに関するDBASEについては http://www.ews.uiuc.edu/~mrgates2/docs/fortran.html

...

あなたはパラメータを渡すと、彼らはで区切る必要があります| | (パイプ)。パラメーター|||は、パラメーターが渡されなくても必要です。パラメーターを渡すと、||内で区切られます。

0

BASIC、Pascal、C、Java、perl、Python、COBOL、FORTRANなどではありません。あなたが使用しているルールエンジンについて言及することは役に立ちます。

実行される操作は、一致操作のように見えます。

'|'パイプ文字の文字列リテラルのように見える|文脈を考えれば、CSVのようなフラットファイル形式のデータベースでは、セパレータとして使用されている可能性があります。たとえば、平文はおそらく次のようなものになります| INVOICETYPE | something | AAA |

しかし、$演算子を手助けすることはできません。これは、変数の置換、または何かの操作、または連結子さえ可能です。

0

私の推測:Fortran。

これはかなり複雑な言語です。私はそれが->演算子を持っているとは思わないが、それは=>を持っているようだ。おそらくそれはあなたのスニペットのベンダー拡張です。

pro-Fortranの証拠は、.and.演算子です。

+0

FORTRANは '<>'の代わりに '/ ='または '.ne.'を使用しませんか? –

0

FORTRAN-ish言語のように見えます。しかし、->は標準的な演算子ではありません。 |は単なる文字列(演算子のようには見えません)ですが、$は演算子のように見えます。これは、文字列のグループ間に常に現れるという事実を推論します。

関連する問題