概要

SPLIT命令は特定の文字で値を分割する命令だ。
タブ区切りや、カンマ区切り等のファイルからデータを取得し
値を各項目に振り分けたい時に使用する事が多いだろう。
また、XMLファイル等を使用してインターフェースする仕組みをもっている場合等にも使用するだろう。

サンプルコード:カンマ区切り

DATA: V_CHAR(15) TYPE C,
V_COL1(5) TYPE C,
V_COL2(5) TYPE C,
V_COL3(5) TYPE C. V_CHAR = 'ABC;DEF;GHI'.
SPLIT V_CHAR AT ';' INTO V_COL1 V_COL2 V_COL3.

説明

当例ではSPLIT命令を使用する事で値’ABC;DEF;GHI’をそれぞれ変数:V_COL1、V_COL2、V_COL3に値を代入する事が可能だ。
V_COL1には’ABC’、V_COL2には’DEF’、V_COL3には’GHI’が代入され、区切り文字に使用された;(セミコロン)は除去される。

サンプルコード:複数の区切り文字

DATA: V_CHAR(15) TYPE C,
V_COL1(15) TYPE C,
V_COL2(15) TYPE C,
V_COL3(15) TYPE C. V_CHAR = 'ABC;DEF,GHI'.
SPLIT V_CHAR AT ';' INTO V_COL1 V_COL2.
* V_COL1 = ABC V_COL2 = DEF,GHI SPLIT V_COL2 AT ',' INTO V_COL2 V_COL3.
* V_COL2 = DEF V_COL3 = GHI

  

説明

当例では複数の区切り文字を使用している為、一度にSPLIT命令を使用して取得できないケースを説明しよう。
値は’ABC;DEF,GHI’のように;(セミコロン)と,(カンマ)で区切りたい為、最初の例のようにまとめて行う事ができない。
このような場合は、手間だが一つずつ区切る事をお勧めする。
まずは、;(セミコロン)で区切る事により、V_COL1に’ABC’を代入する事ができる。この時V_COL2には残りの値が’DEF,GHI’
が残るので、もう一度同じように,(カンマ)で区切る。そうするとV_COL2には’DEF’、そしてV_COL3には’GHI’が代入される事になるだろう。

SPLIT(文字列の分割)的更多相关文章

  1. Python + opencv 实现图片文字的分割

    实现步骤: 1.通过水平投影对图形进行水平分割,获取每一行的图像: 2.通过垂直投影对分割的每一行图像进行垂直分割,最终确定每一个字符的坐标位置,分割出每一个字符: 先简单介绍一下投影法:分别在水平和 ...

  2. SHIFT(文字列の指定位置数の移動)

    文字ごとの項目内容の移動 以下のような SHIFT 命令のバリアントを使用すると.項目内容を移動することができます.SHIFT を使用すると.文字ごとに項目内容が移動します. 文字列の指定位置数の移動 ...

  3. CONCATENATE命令(文字列の結合)

    CONCATENATE命令とは文字列の結合を行う命令である.文字列を扱うChar, Numeric, Dats, Time, Stringの変数で使用する事が可能だ.単純に文字列の結合のみを行う方法. ...

  4. CONDENSE命令により、文字列から冗長スペースが削除

    CONDENSE 命令により.文字列から冗長スペースが削除されます. CONDENSE c [NO-GAPS]. この命令により.項目 c に先行空白が含まれる場合は削除され.その他の空白列がある場合 ...

  5. OLED液晶屏幕(3)串口读取文字并分割

    https://blog.csdn.net/iracer/article/details/50334041 String comdata = ""; void setup() { ...

  6. split 将字符串分割成字符串数组

    list_name = list_name.split(","); split() 方法用于把一个字符串分割成字符串数组. 语法 stringObject.split(separa ...

  7. Linux中split大文件分割和cat合并文件

    当需要将较大的数据上传到服务器,或从服务器下载较大的日志文件时,往往会因为网络或其它原因而导致传输中断而不得不重新传输.这种情况下,可以先将大文件分割成小文件后分批传输,传完后再合并文件. 1.分割 ...

  8. java split进行字符串分割

    在java.lang包中有String.split()方法,返回是一个数组 我在应用中用到一些,给大家总结一下,仅供大家参考: 1.如果用"."作为分隔的话,必须是如下写法,Str ...

  9. 模拟java的split函数,分割字符串,类似于java的split方法

    /*自定义oracle的分割函数*//*定义一个type,用户接收返回的数据集合类型*/create or replace type splitType as table of varchar2(40 ...

随机推荐

  1. Master HA彻底解密

    本课主题 Master HA 解析 Master HA 解析源码分享 Master HA 解析 生产环境下一般采用 ZooKeeper 做 HA,且建义为 3台 Master, ZooKeeper 会 ...

  2. Perl Unicode全攻略

    Perl Unicode全攻略 耐心看完本文,相信你今后在unicode处理上不会再有什么问题. 本文内容适用于perl 5.8及其以上版本. perl internal form 在Perl看来, ...

  3. SPOJ MUSKET - Musketeers

    黑书P117页. 要是不看解析,确实不要算和定义状态. 把环看成链,是指把这个1234512345,写两边,然后怎么表示一个人是否胜利了呢?其实就是其他人全部死光(好像等于没说): 考虑最后一次杀人, ...

  4. 2018.11.14 hibernate中的查询优化---关联级别查询

    查询优化------关联级别查询 集合策略 在Mapper映射文件中添加属性 测试数据 lazy:true 延时加载数据 fetch:select 单表查询 控制台显示输出 结论:单表查询,使用到在加 ...

  5. Docker 安装tomcat7

    [root@VM_0_7_centos ~]# docker pull tomcat:7-jre7 [root@VM_0_7_centos ~]# docker run -di --name=tomc ...

  6. java多线程(简单介绍)

    简单介绍 线程是程序运行的基本执行单元.当操作系统(不包括单线程的操作系统,如微软早期的DOS)在执行一个程序时,会在系统中建立一个进程,而在这个进程中,必须至少建立一个线程(这个线程被称为主线程)来 ...

  7. 【luogu P2023 [AHOI2009]维护序列】 题解

    题目链接:https://www.luogu.org/problemnew/show/P2023 把P3373改一改直接粘过来就A #include <iostream> #include ...

  8. 【luogu P3390 矩阵快速幂】 模板

    题目链接:https://www.luogu.org/problemnew/show/P3390 首先要明白矩阵乘法是什么 对于矩阵A m*p  与  B p*n 的矩阵 得到C m*n 的矩阵 矩阵 ...

  9. JavaScript函数变量作用域

    变量作用域 在JavaScript中,用var申明的变量实际上是有作用域的. 如果一个变量在函数体内部申明,则该变量的作用域为整个函数体,在函数体外不可引用该变量. 如果两个不同的函数各自申明了同一变 ...

  10. Navicat for Mysql中错误提示索引过长1071-max key length is 767 byte

    1.建用户信息表 tb_person_info create table tb_person_info( user_id int(10) auto_increment, `name` varchar( ...