COBOL言語の関数「DISPLAY(NATIONAL)-OF」について理解しよう! | 用語辞典
COBOL(コボル)言語の予約語DISPLAY-OF、NATIONAL-OFを使った全角文字、半角文字の変換とは
COBOL(コボル)言語のDISPLAY-OF、NATIONAL-OF関数とは?
COBOL(コボル)の組込み関数であるDISPLAY-OF、NATIONAL-OF関数は、指定した文字列に対して半角や全角変換したい場合に使用します。DISPLAY-OF関数は指定した全角文字(日本語など)を半角文字に、NATIONAL-OF関数は指定した半角文字を全角文字(日本語など)にして値を返します。
書き方(DISPLAY-OF関数):
FUNCTION DISPLAY-OF(引数1 [引数2])
- 引数1:半角にしたい全角文字を指定します。
- 引数2:指定した引数1に対応する半角英数字がない場合の値を指定します。
- 戻り値:引数1の全角文字に対応する半角英数字
使用例:
実行結果:
書き方(NATIONAL-OF関数):
FUNCTION NATIONAL-OF(引数1 [引数2])
- 引数1:全角にしたい半角文字を指定します。
- 引数2:指定した引数1に対応する全角文字がない場合の値を指定します。
- 戻り値:引数1の半角英数字に対応する全角文字
使用例:
実行結果:
DISPLAY-OF、NATIONAL-OF関数のCOBOL(コボル)言語における基本事項やルールについて
- 「FUNCTION DISPLAY-OF(NATIONAL-OF)」の間の空白や改行は、自由に設定できます。
- 組込み関数の前には予約語「FUNCTION」を指定する必要があります。
- 引数は複数文字指定する事はできません。(全角文字、半角文字1つだけです)
- [引数2]は指定した引数1に対応する値がない場合の値を指定しますが、省略する事もできます。
COBOL(コボル)言語のDISPLAY-OF、NATIONAL-OF関数を扱う上での注意点
DISPLAY-OF、NATIONAL-OF関数は、第4次COBOL規格(以下、COBOL2002)より新たに使用できるようになった組込み関数です。COBOL2002 は、1985年に制定された第3次COBOL規格の仕様は包含、互換性を維持しながら作成されていますが、逆に第3次COBOL規格の処理系をお使いの方は、使用する事ができませんので注意が必要です。(詳細はご使用の環境のマニュアル等をご確認ください)
DISPLAY-OF、NATIONAL-OF関数を使ったCOBOL(コボル)プログラムの活用法
DISPLAY-OF、NATIONAL-OF関数は、全角半角文字が混在するデータをどちらかの文字列に揃えたい場合などに非常に便利です。ここでは、活用法としてACCEPT文で画面入力した値を取得し、全角文字、半角文字を求める簡単なプログラムを紹介します。
サンプルプログラム(DISPLAY-OF):
- IDENTIFICATION DIVISION.
- PROGRAM-ID. DISPLAY-OF_SAMPLE01.
- ENVIRONMENT DIVISION.
- INPUT-OUTPUT SECTION.
- DATA DIVISION.
- WORKING-STORAGE SECTION.
- 01 SAMPLE-DATA.
- 03 ZENKAKU PIC N(10).
- 03 HANKAKU PIC X(5).
- PROCEDURE DIVISION.
- *>----------------------------------------------------
- *> コンソールに入力
- *>----------------------------------------------------
- DISPLAY "全角文字を入力してください。>> " WITH NO ADVANCING.
- ACCEPT ZENKAKU FROM CONSOLE.
- *>----------------------------------------------------
- *> 全角文字を半角文字に変換する
- *>----------------------------------------------------
- MOVE FUNCTION DISPLAY-OF(ZENKAKU) TO HANKAKU.
- DISPLAY "半角文字は:" HANKAKU.
- STOP RUN.
実行結果(DISPLAY-OF):
サンプルプログラム(NATIONAL-OF):
- IDENTIFICATION DIVISION.
- PROGRAM-ID. NATIONAL-OF_SAMPLE01.
- ENVIRONMENT DIVISION.
- INPUT-OUTPUT SECTION.
- DATA DIVISION.
- WORKING-STORAGE SECTION.
- 01 SAMPLE-DATA.
- 03 ZENKAKU PIC N(10).
- 03 HANKAKU PIC X(5).
- PROCEDURE DIVISION.
- *>----------------------------------------------------
- *> コンソールに入力
- *>----------------------------------------------------
- DISPLAY "半角文字を入力してください。>> " WITH NO ADVANCING.
- ACCEPT HANKAKU FROM CONSOLE.
- *>----------------------------------------------------
- *> 半角文字を全角文字に変換する
- *>----------------------------------------------------
- MOVE FUNCTION NATIONAL-OF(HANKAKU) TO ZENKAKU.
- DISPLAY "全角文字は:" ZENKAKU.
- STOP RUN.
実行結果(NATIONAL-OF):
今回ご紹介したDISPLAY-OF、NATIONAL-OFのサンプルプログラムは、ACCEPT文で画面から入力した文字を引数に指定して、それぞれ全角文字、半角文字を求めています。これらの関数を利用すれば、全角文字、半角文字など混在したデータを扱う場合にも、統一したデータ形式で扱う事ができるため大変便利です。COBOL2002から使用できるCOBOLとしては比較的新しい組込み関数ではありますが、このような有効な関数は、普段作成するプログラムでもしっかり活用していきましょう。
この記事を読んだ人は、こちらの記事も読んでいます
あなたのCOBOL技術を活かしませんか?
COBOL入門のカテゴリー
1. 優良社員が多数在籍しています
2. 即日派遣、又は請負います
3. 安心価格で請負います
4. 同時、協力会社募集中です
1. 正社員
2. 契約社員
3. 個人事業主
などの 求人情報 が閲覧できます。
目指せ!COBOLダントツ一番企業。
創業当初の話や理念が閲覧できます。
応募条件
※2020年5月31日を以って、締切りました。
18歳~28歳の方。
正社員採用において、北川社長の著書『祈り方が9割』を読んで感想文を事前に提出すると、無条件で最終面接まで進むことができます。
COBOLとは、どのようなプログラミング言語なのか、初心者にもわかりやすく、文法の例をあげて解説してます。
COBOL入門の人気記事
- COBOL言語とは?プログラムの書き方やルールを解説!|基礎ガイド
- 【COBOL言語】条件分岐処理の代名詞「IF文」について知ろう|用語辞典
- COBOL言語の「MOVE文」とは?転記のルールをご紹介します|用語辞典
- COBOL言語の「STRING文」とは?文字連結の基礎知識と注意点|用語辞典
- 多枝分岐ってなに?COBOL言語の「EVALUATE文」を知ろう!|用語辞典
- COBOL言語の「PICTURE句」とは?基本事項を解説します!|用語辞典
- COBOL言語で計算処理をするなら「COMPUTE文」|用語辞典
- COBOL言語の「REDEFINES句」とは?使い方を確認しよう!|用語辞典
- 覚えておけば楽ができる?COBOL言語の「COPY文」の使い方|用語辞典
- COBOL言語の文字列操作のパターンを理解しよう!|基礎ガイド
- COBOL言語の初期化処理に重宝する「INITIALIZE文」とは?|用語辞典
- COBOL言語の「LOW-VALUE」の使い方について理解しよう!|基礎ガイド
- COBOL言語の「OCCURS句」について知ろう!学ぶべき基本とは|用語辞典
- COBOL言語初心者も安心! 難解「CALL文」をスッキリ解決|用語辞典
- COBOL言語の「PERFORM文」とは。実行制御について解説!|用語辞典
- COBOL言語の繰り返し処理のパターンを理解しよう!|基礎ガイド
- COBOL言語の「定数」の種類と使い方について理解しよう!|用語辞典
- COBOLのDBアクセスパターンを学ぼう!「FETCH」|応用ガイド
- COBOL言語の「DISPLAY文」は、ディスプレイ出力の為にある|用語辞典
- COBOL言語の「VARYING句」は便利?使用方法を学びましょう|用語辞典