2017-12-15 14 views
4

通常、単純な文字列の場合、主要なバックティックがトリックを行います。KDB/qシンボルの作成には二重引用符が必要ですか?

例:`abc

文字列がスペースなど、いくつかの特殊文字を、持っている場合は、この方法ではうまくいきません。

  • 例:`$"abc def"
  • 例:`$"BAT-3Kn.BK"

$""が必要なルールは何ですか?

答えて

5

シンボルが英数字、ドット(。)、コロン(:)、および非先頭のアンダースコア(_)で構成されている場合、シンボルの単純な構文を使用できます。さらに、前にコロンがある場合はスラッシュ(/)を使用できます。それ以外は `$" "構文が必要です。

2

利用可能な書籍「Q for mortals」は、onlineにあり、データ型について議論するセクションがあります。 symbolsことが述べ:

シンボル 直接コンソールから入力することができないテキストを含む任意のテキストを含むことができる - 例えば、埋め込まれたブランクおよびそのようなバックティックなどの特殊文字 。任意の テキストからシンボルを作成するには、対応するcharのリストをシンボルにキャストします。 ( は、特殊文字を文字列にエスケープする必要があります。)キャストに関する詳細は§6.1.5を参照してください。

q)`$"A symbol with blanks and `" 
`A symbol with blanks and ` 

ここに不可欠なお持ち帰りは特殊文字が含まれる場合、シンボルに文字列を変換が必要とされることです。例では、スペース" "とハイフン"-"の両方がシンボルタイプに直接配置できない文字です。

関連する問題