前のページ | 次のページ | 目次 | 索引
データ・タイプとは,同じ方法で作成され,同じ方法で処理される要素グループです。
変数のデータ・タイプは,その変数に対してどのような操作を実行できるかを
決定します。DEC XTPUのデータ・タイプは以下に示すとおりです。
DEC XTPUで拡張されていて,この章で解説されているものにはアスタリスク
(*)がついています。その他のデータ・タイプは,英語版
DECTPUとまったく同じに扱われます。
| ARRAY | アレイ(*) |
| BUFFER | バッファ |
| LEARN | 学習 |
| INTEGER | 整数 |
| KEYWORD | キーワード |
| MARKER | マーカ(*) |
| PATTERN | パターン(*) |
| PROGRAM | プログラム |
| PROCESS | プロセス |
| RANGE | レンジ(*) |
| STRING | 文字列(*) |
| UNSPECIFIED | 不定 |
| WINDOW | ウィンドウ |
以降の各節ではDEC XTPUのデータ・タイプのうち,英語版DECTPUと異なった
意味を持つものについて説明します。それ以外のデータ・タイプについては
『Guide to the DEC Text Processing Utility』を参照してください。
アレイ・データ・タイプは,データをグループ化して扱うためのデータ・タイプです。
アレイ・データ・タイプの要素には,任意のデータ・タイプを入れることができます。
アレイ・データ・タイプの要素となるデータ・タイプが文字列データ・タイプのときには,
アレイ・データ・タイプに日本語データを入れることができます。
例
mark1 := MARK (none);
mix_array {mark1} := " 日本語文字列";
またアレイ・データ・タイプは,そのINDEXに文字列を使うことができます。
このとき,そのINDEXの中には日本語文字を含めることができます。
例
mix_array {" 英語"} := "hello";
mix_array {" 日本語"} := "こんにちは";
マーカ・データ・タイプはバッファ内の文字に関連する参照点です。
マーカ・データ・タイプはMARK組込みプロシージャを使って作成されます。
マーカは文字に対してセットされるため,複数カラム文字の2カラム目以降に編集点が
あるときでもマーカはその文字,すなわち1カラム目に対してセットされます。ただし,
フリー・マーカは複数カラム文字の2カラム目以降にセットすることができます。
フリー・マーカを作成するには,MARK (FREE_CURSOR)を使用してください。
パターンは,バッファ内の特定の文字列を探索するために使用される構造です。
パターンはSEARCHおよびSEARCH_QUIETLY組込みプロシージャの第1パラメータ
として使用されます。パターンを作成するには,DEC XTPUパターン演算子
(+, &, |, @)を用いて以下の要素を結合します。
- 文字列定数
- 文字列変数
- パターン変数
- パターン組込みプロシージャの呼び出し
- 以下のキーワード
ANCHOR
LINE_BEGIN
LINE_END
PAGE_BREAK
REMAIN
UNANCHOR
- カッコ(式を囲むために使用します)
上記の要素のうち,文字列定数,文字列変数,パターン組込みプロシージャ
の文字列パラメータにはDEC XTPUで使用できるすべての文字を含むことができます。
パターン・データ・タイプを通知する組込みプロシージャは
表 2-1に示すとおりです。
| プロシージャ | 説明 |
| ANY | パラメータとして使用した文字列のどの文字
(1文字)とも一致する |
| ARB | 指定した長さの一連の文字と一致する |
| MATCH | 現在の文字位置から始まり,
MATCHに対するパラメータとして指定した文字列まで続く(その文字列も含む)
一連の文字と一致する |
| NOTANY | パラメータとして指定した文字列に含まれていないどの
1文字とも一致する |
| SCAN | パラメータとして指定した文字列に
含まれているどの文字も含まない最長文字列と一致する |
| SCANL | SCANと同じであるが,
SCANLはレコード境界をこえることができる |
| SPAN | パラメータとして指定した
文字列の文字だけを含む最長文字列と一致する |
| SPANL | SPANと同じであるが,
SPANLはレコード境界をこえることができる |
これらのプロシージャの文字列パラメータには,2バイト文字を含むことができます。
レンジ・データ・タイプは,指定した2つのマーカの間のすべてのテキスト
(2つのマーカも含む)を表現します。レンジはCREATE_RANGE組込みプロシージャを
使用して作成することができます。レンジ・データ・タイプは文字単位で
つけられるので,複数カラム文字の一部分だけを含んだレンジを
作成することはできません。
DEC XTPUは文字データを表現するために文字列データ・タイプを使用します。
文字列データ・タイプの値には,ASCII文字セット,DEC補助文字セット,
ISO Latin1補助文字セット,JISローマ字セット,JISカタカナ・セット
およびDEC漢字セットで定義されるすべての文字を含むことができます。
文字定数を指定するには,値を引用符で囲まなければなりません。DEC XTPUでは,
文字列の区切り文字としてASCII文字の二重引用符(")または単一引用符
(')を使用することができますが,DEC漢字セットの二重引用符(“,”)や
単一引用符(’)を文字列の区切り文字として使用することはできません。
前のページ | 次のページ | 目次 | 索引