ABAP字符串操作
 

ABAP對字串的操作方法與其他語言的操作有較大差別,以下是較常用的對字串操作的方法:

1. 字串的連接:CONCATENATE
DATA: t1 TYPE c LENGTH 10 VALUE 'We',
    t2 TYPE c LENGTH 10 VALUE 'have',
    t3 TYPE c LENGTH 10 VALUE 'all',
    t4 TYPE c LENGTH 10 VALUE 'the',
    t5 TYPE c LENGTH 10 VALUE 'time',
    t6 TYPE c LENGTH 10 VALUE 'in',
    t7 TYPE c LENGTH 10 VALUE 'the',
    t8 TYPE c LENGTH 10 VALUE 'world',
    result TYPE string.

CONCATENATE t1 t2 t3 t4 t5 t6 t7 t8 INTO result. "直接連接
CONCATENATE t1 t2 t3 t4 t5 t6 t7 t8 INTO result SEPARATED BY space. "用空格將每個字串連接

2. 拆分字串: SPLIT
DATA: str1 TYPE string,
    str2 TYPE string,
         str3 TYPE string,
         itab TYPE TABLE OF string,
         text TYPE string.

text = `What a drag it is getting old`.
SPLIT text AT space INTO: str1 str2 str3,
TABLE itab.

3. 去除多余的空格:CONDENSE
DATA: BEGIN OF sentence,
        word1 TYPE c LENGTH 30 VALUE 'She',
          word2 TYPE c LENGTH 30 VALUE 'feeds',
          word3 TYPE c LENGTH 30 VALUE 'you',
          word4 TYPE c LENGTH 30 VALUE 'tea',
          word5 TYPE c LENGTH 30 VALUE 'and',
          word6 TYPE c LENGTH 30 VALUE 'oranges',
       END OF sentence,
text TYPE string.

text = sentence.
CONDENSE text.“在每個連接串中間會有一個空格
  CONDENSE text No-GAPS. "在後面加入NO-GAPS後,所有空格都會去除。

4.字串轉換:TRANSLATE
DATA text TYPE string.
text = `Careful with that Axe, Eugene`.
TRANSLATE text TO UPPER CASE. "轉大寫
TRANSLATE text TO LOWER CASE. "轉小寫

  DATA text TYPE string.
  text = `Barbcbdbarb`.
  TRANSLATE text USING 'ABBAabba'. “A與B換轉 a與b換轉

5.取字串長度:STRLEN
data text type c length 20.
data: ilen type i.
text = `Barbcbdbarb`.
ilen = strlen( text ). "字串實際長度(11)
describe field text length ilen in byte mode. "字串定義時的字節長度,一個長度等2個字節(40)
describe field text length ilen in character mode. "字串定義的長度(20)

6.截取子字串
data: text type c length 10.
data: ilen type i.
data: subtext type c length 5.
text = 'ABCDEFGHIJ'.
subtext = text+0(5). "取左邊5個字符('ABCDE')
subtext = text+3(5). "從第四個字串起取5個字符('DEFGH)
text+0(1) = 'Z'. "將第一個字符變爲'Z'
注意:+兩邊不能有空格。

ABAP字符串操作 截取字符长度 取位数的更多相关文章

  1. ABAP 字符串操作

    1).SHIFT:截断字符串 SHIFT {c} [BY {n} PLACES] [{mode}].: 作用:去掉字符串的前n个位置的字符,如果n未指定,默认为1,如果指定的n小于等于0,则字符串不变 ...

  2. python中字符串操作--截取,查找,替换

    python中,对字符串的操作是最常见的,python对字符串操作有自己特殊的处理方式. 字符串的截取 python中对于字符串的索引是比较特别的,来感受一下: s = '123456789' #截取 ...

  3. MySQL的字符串函数截取字符

    函数: 1.从左开始截取字符串 left(str, length) 说明:left(被截取字段,截取长度) 例:select left(content,200) as abstract from my ...

  4. CSS截取截取字符长度并显示省略号的方法

    HTML部分 <div> <span>这是一个CSS3截取截取字符的例子.它根据宽度来处理.</span> </div> <div class=& ...

  5. JS按字节截取字符长度实例

    处理过长的字符串,截取并添加省略号 * 注:半角长度为1,全角长度为2 *  * pStr:字符串 * pLen:截取长度 *  * return: 截取后的字符串 * 代码如下: function ...

  6. lua 操作中文字符串之截取和长度竖排显示

    前言 在游戏中,我们经常会遇到汉字的多行显示,比如名字竖行显示等.如下图: 为了实现上面的效果,lua实现分行是通过  \n  实现的,所以我们需要取出汉字,然后插入 \n 实现分行效果.还有一种就是 ...

  7. ABAP字符串操作1 检查字段小数位的长度

    目的: 标准值1-6检查----最多保留小数点后3位 ,如果超出3位,显示错误信息”请检查父件XXX工序XXX的标准值X 的数值XXXX超出3位 “,退出. 关键语法1. SPLIT ,        ...

  8. JS按字节截取字符长度实例2

    /* * param str 要截取的字符串 * param L 要截取的字节长度,注意是字节不是字符,一个汉字两个字节 * return 截取后的字符串 */ function cutStr(str ...

  9. JS常见操作,日期操作,字符串操作,表单验证等

    复制代码 //第一篇博文,希望大家多多支持 /***** BasePage.js 公共的 脚本文件 部分方法需引用jquery库 *****/ //#region 日期操作 //字符串转化为时间. f ...

随机推荐

  1. No object in the CompoundRoot has a publicly accessible property named

    No object in the CompoundRoot has a publicly accessible property named 'typeid' (no setter could be ...

  2. 鸟哥的LINUX私房菜基础篇第三版 阅读笔记 二

    Linux档案与目录管理 1.一些比较特殊的目录,需要用力的记下来 .         代表当前层目录 ..        代表上一层目录 -        代表前一个工作目录   (这个好屌!其他的 ...

  3. go实现排序的链表

    go实现排序的链表 Posted on 2013-08-14 23:25 mac的学习笔记 阅读(224) 评论(0) 编辑 收藏 链表的数据结构比较线性数组,优点是 可以方便的对任意的位置进行插入和 ...

  4. 写20万数据到Excel只需9秒

    on my god,写20万数据到Excel只需9秒   还是菜鸟时,在某个.Net项目中,用户需要从业务系统导出Report,而数据量通常都在上万条以上,最初采用的方式就是在服务器端用NPOI生成E ...

  5. Workflow:自定义工作流 之 模型选择

    Workflow:自定义工作流 之 模型选择 背景 毕业5年,做了4个版本的工作流框架,工作流几乎是每个企业应用开发人员必须跨过的门槛(我还没有跨过去),下面简要说一下之前的4个版本,然后重点介绍第5 ...

  6. 采用SOLR进行全文索引的完整解决方案,设计图

  7. Arduino 不同Arduino衍生板子的问题

    arduino IDE装上的时候,要记得在windows平台安装驱动. 如果不安装驱动的话,烧写程序的时候也许会遇到下面的现象. 原因有如下几种: 1,arduino控制板或者COM口没有选对,这种问 ...

  8. MySQL 的 phpmyadmin上传大小限制(转)以及 MySQL server has gone away 的解决办法

    phpmyadmin上传大小限制 原帖地址:http://www.hmidc.com/home/news/?13914.html 时间:2011-6-21 11:17:57  作者:红帽之家  来源: ...

  9. 动态加载与插件系统的初步实现(3):WinForm示例

    动态加载与插件系统的初步实现(三):WinForm示例 代码文件在此Download,本文章围绕前文所述默认AppDomain.插件容器AppDomain两个域及IPlugin.PluginProvi ...

  10. Django入门实践(三)

    Django入门实践(三) Django简单应用 前面简单示例说明了views和Template的工作过程,但是Django最核心的是App,涉及到App则会和Model(数据库)打交道.下面举的例子 ...