字符相关操作

ABAP 常用函数总结 本人ABAP开发中,用到各种常用函数总结,包括日期计算等。 立即下载

1、检查字符串是否全部为数字

<span style="font-size:18px;">**使用正则表达式检查是否为数字,如果返回X,则全部为数字
*  DATA:MATCHER TYPE REF TO CL_ABAP_MATCHER.
*  DATA:MATCH   TYPE C LENGTH 1.
*        MATCHER = CL_ABAP_MATCHER=>CREATE( PATTERN     = '\d+'
*                                   TEXT        = WA_BSIK1-ZUONR ).
*        MATCH = MATCHER->MATCH( ).
if match = 'X',则表示全部为数字</span>

2、将字符格式转换为金额

函数名:UNITS_STRING_CONVERT

作用:根据当前用户的金额显示方式,将带有分隔符的金额(字符型)转换为P类型的数值。例如:将“1,000.123”转换为 1000.123
(我一开始的时候是用replace将逗号替换掉,然后直接赋值给一个数值型的变量.但是通用性不太好)

先说说sap的数字显示的三种方式:

1. 小数点是逗号,分隔符是句号  N.NNN,NN(欧洲人的方式很奇怪:))     

2.小数点是句号,分隔符是逗号 N,NNN.NN 

3.小数点是逗号,分隔符是空格 N NNN,NN

系统以哪种方式显示,存储在用户表USR01的DCPFM字段,值分别是"空" 、“X”、“Y”。

调用函数的时候将这个字段将作为其中的一个输入参数.函数会根据当前显示转换.

例如:

DATA: l_clabs TYPE p DECIMALS 3,
         l_dcpfm LIKE usr01-dcpfm.


SELECT 
SINGLE dcpfm INTO l_dcpfm
     FROM usr01
     WHERE bname = sy-uname.

CALL 

FUNCTION 'UNITS_STRING_CONVERT'
 EXPORTING
   units_string       = '123,456.789'
   dcpfm              = l_dcpfm      "此时为X
* 
    MLLN               = 'M'
* 
    TSND               = 'T'
 IMPORTING
   units              = l_clabs
 EXCEPTIONS
   invalid_type       = 1
   OTHERS             = 2.

3、replace 处理*号

 DATA: g_maktx TYPE makt-maktx.

PARAMETERS: p_maktx TYPE makt-maktx.

g_maktx = p_maktx.

REPLACE ALL OCCURRENCES OF '*' IN g_maktx WITH '%'.

SELECT matnr
       maktx
  INTO TABLE it_data UP TO 20 ROWS
  FROM makt
 WHERE maktx LIKE g_maktx.
4、字符串处理

1.对一个日期字符串进行修改赋值:

data:g_aktiv   TYPE   anla-aktiv.

g_aktiv+0(4) = p_gjahr.

g_aktiv+4(2) = p_peraf.    

g_aktiv+6(2) = '01'.

 

2.对一个字符串赋值:将取出来的月份赋值到一个字符串当中

DATA: g_month   TYPE   c LENGTH 2.

 

CLEAR wa_lnran.

LOOP AT gt_lnran INTO wa_lnran.

  g_month = wa_lnran-bzdat+4(2).

  IF g_month <> p_peraf.

    DELETE TABLE gt_lnran FROM wa_lnran.

  ENDIF.

ENDLOOP.

 

3.字符串位置判断

DATA:L_STR(50).

MOVE 'WELCOME TO SAP WORLD' TO L_STR.

SEARCH L_STR FOR 'SAP'.

IF SY-SUBRC = 0.

WRITE: SY-FDPOD."返回要查找的字符串最开始出现的位置

ENDIF.

 

4.字符串的截取+

DATA: L_STR(50) TYPE C VALUE 'WELCOME TO SAP WORLD'.

DATA: L_STR1 TYPE C LENGTH 10.

L_STR1 = L_STR(10)."截取字符串前10位数

L_STR1 = L_STR + 5(10)."从字符串第5位数开始截取,共截取10位数

 

5.获取字符串的长度-STRLEN

DATA: L_STR(50) TYPE C VALUE 'WELCOME TO SAP WORLD'.

DATA: LEN TYPE C.

LEN = STRLEN(L_STR).

 

6.字符串合并-CONCATENATE INTO

DATA: L_STR1(10) TYPE C VALUE 'WELCOME',

      L_STR2(10) TYPE C VALUE 'TO',

      L_STR3(10) TYPE C VALUE 'SAPWORLD',

      L_RES      TYPE STRING .

CONCATENATE L_STR1 L_STR2 L_STR3 INTO L_RES.

CONCATENATE L_STR1 L_STR2 L_STR3 INTO L_RES SEPARATED BY ''."合并时加上指定的字符

CONCATENATE L_STR1 L_STR2 L_STR3 INTO L_RES RESPECTING BLANKS."合并时保留前后空格

 

7.字符串拆分-SPLIT... AT... INTO...

DATA: L_STR1(10) TYPE C,

      L_STR2(10) TYPE C,

      L_STR3(10) TYPE C.

DATA: STR(50) TYPE C VALUE 'WELCOME TO MY SAP WORLD'.

SPLIT STR AT SPACE INTO L_STR1 L_STR2 L_STR3."L_STR3的值为MY SAP WORLD.

 

8.按条件转换replace 'SAP' with 'ERP' INTO STR.

 

9.大小写转换

TRANSLATE STR TO UPPER CASE.

TRANSLATE STR TO LOWER CASE.


5.检查select-options里边是否有*:

检查select-options里边是否有*:
data: k type string,
         l type i.
find '*' in section offset 1 of s_matnr."1表示第一次出现
if sy-subrc = 0.
   l = strlen(s_matnr-low).
   l = l - 1.
concatenate s_matnr-low(l) '%' into k.
SELECT MATNR XCHPF INTO TABLE ITAB_MATNR FROM MARC
      WHERE WERKS IN S_WERKS
        AND MATNR LIKE k
        AND XCHPF = ''.



告别CPU空转!用STC8的SPI+DMA高效驱动上百颗WS2812B灯珠 本文详细解析了如何利用STC8单片机的SPI+DMA外设高效驱动WS2812B全彩灯珠,解决传统软件延时驱动方式在长灯带应用中的性能瓶颈。通过硬件方案设计、数据格式转换和DMA传输配置,实现高达400Hz的刷新率和低于5%的CPU占用率,适用于大规模灯光项目。 阅读详情

相关推荐

基于FPGA低频方波测量-频率与占空比

基于FPGA低频方波测量-频率与占空比

DRAXY的博客 6732

ABAP 数字合法性检查

MESSAGE '你输入申报单价是数字' TYPE 'S' ." DISPLAY LIKE 'E' .MESSAGE '你输入申报单价不是数字' TYPE 'S' DISPLAY LIKE 'E' .

qq_34276316的博客 878

生物信息学避坑指南:Scissor算法参数alpha和cutoff的黄金设置法则

本文深入解析了生物信息学中Scissor算法的关键参数alpha和cutoff的黄金设置法则,帮助研究者有效整合bulk RNA与单细胞数据,识别单细胞亚群。通过实战验证的调参策略,避开常见陷阱,获得可靠的生物学发现,特别适用于肿瘤异质性研究和免疫细胞分型等场景。

weixin_33734785的博客 450

ABAP 在字符串之间加入若干空格

方法一:concatenate 'haha' '                '(用全角的输入法下进去空格) 'xixi' into l_text.方法二:l_text+0(4) = 'haha' .      l_text+8(4) = 'xixi' .            输出在haha和xixi的中间就多了4个空格

少年休闲海 9687

从飞机翼型仿真到燃烧模拟:Fluent多物理场耦合的3种实战策略

本文深入探讨了Fluent在多物理场耦合仿真中的三种实战策略,涵盖可压缩流动与燃烧耦合、湍流模型选择及网格策略,以及顺序耦合、强耦合和混合耦合方法。通过具体案例和工程实践,帮助中高级用户提升仿真精度和效率,适用于航空航天和能源化工等领域。

aa123的博客 993

【C++PTA】6-1 Point类的运算 (10 分)

定义Point类,有坐标x,y两个私有成员变量;对Point类重载“+”(相加)、“-”(相减)和“==”(相等)运算符,实现对坐标的改变,要求用友元函数和成员函数两种方法实现。对Point类重载<<运算符,以使得代码 Point p; cout<<p<<endl;可以输出该点对象的坐标。 函数接口定义: 实现Point类。 裁判测试程序样例: /* 请在这里填写答案 */ int main(int argc, char const *argv[]) { P

libertye的博客 2367

ABAP 判断数字大杂烩

经常会在开发中判断输入的字串是否为数字的情况,比如上载文件中如果有金额、数量的时候,如果不做判断就直接将非数字的字串赋值给quan类型的变量会导致dump。下面将数字的判断方式做一下汇总: 1. 先来个最简单的 使用SPLIT通过‘.’分割,然后判断后面的部分是否大于0 DATA LV_ISINTEGER TYPE CHAR20. DATA INTEGER TYPE CHAR20. DATA DECIMAL TYPE CHAR20. "判断数量是否是小数 LV_ISINTEGER = GS_DATA-ME

'尤其是十月的风'的博客 5671

自动驾驶开发者必看:nuscenes数据集23类物体标注全解析(附避坑指南)

本文深入解析nuscenes数据集的23类物体标注系统,为自动驾驶开发者提供全面的标注规范解读和实战避坑指南。涵盖多模态数据组织、类别细分规则、属性系统应用技巧以及标注质量验证方法,帮助开发者高效利用这一标杆数据集提升模型性能。

weixin_29041767的博客 255

SAP ABAP 判断字符串是否能转成整数、小数、其他字符串

FUNCTIONzhy_fm_check_dic. *"---------------------------------------------------------------------- *"*"本地接口: *"IMPORTING *"VALUE(INPUT)TYPESTRING *"EXPORTING *"VALUE(E_TYPE)TYPEZSTR_TYPE *"EXCEPTIONS *"NO_INPUT *"--------------...

csucoder_zone的博客 2717

YOLOv11改进策略【Backbone/主干网络】|替换HGNetV2骨干,包含RT-DETR中的l、x模型

本文记录的是基于HGNetv2的YOLOv11目标检测改进方法研究。本文利用HGNetv2替换YOLOv11的骨干网络,HGNetv2 通过其 GPU 推理友好的 3×3 标准卷积和层次化 HG Block 结构,能够为骨干网络提供高效且完整的特征提取能力。并且其中的和可在降低计算量的同时丰富特征表达,增强对多尺度目标特征的捕获能力,进而提高模型精度。本文配置了原论文中rtdetr-lrtdetr-x,以满足不同算力和检测精度的需求。

Limiiiing的博客 669

华为OD机试 - 计算数列位置N的值 - 模拟法(Python/JS/C/C++ 新系统 100分)

本专栏收录于《华为OD机试真题(Python/JS/C/C++)》。刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新。输入 M,N 两个数,则按照以下规则形成一个数列。数列的前 M 个元素的值为 1 到 M从 M+1 个元素开始,计算逻辑为如果其前 M 个元素中,存在值相同的元素,则该位置上的数值等于前 M 个数中最大数值与最小数值之和。如果其前 M 个元素中,

学Java,找哪吒 508

ABAP 判断字符串中是否全部为数字的方法

判断字符串的数据类型,可以使用函数NUMERIC_CHECK, 使用方法也很简单 如果是纯数字 没有小数点,这么判断是可以的(注意NUMC是会自动补0的,仅用于判断类型没问题),但是如果有小数就会变成CHAR 还有另一种方法 IFcl_abap_matcher=>matches( pattern='^(-?[1-9]\d*(\.\d*[1-9])?)|(-?0\.\...

yiyuzz的博客 1万+

openmediavault(OMV) (1)安装部署

EXT3(Third Extended File System): EXT3 是 Linux 中广泛使用的日志文件系统,是 EXT2 文件系统的升级版本。这里可以根据自己的需求进行设置,目前只设置了自动登出为1天,为方便后续配置使用,其他设置可根据自己的具体需求进行设置。通过cd 命令进入到我们的raid存储中,通过ls发现里面没有任何的数据,因为我们的raid存储中还未创建任何数据。我的系统要安装在100G的磁盘上,故选择100G的磁盘,实际可以根据具体情况选择。

Monster✺◟(∗❛ัᴗ❛ั∗)◞✺的博客 2168

字符串的相关操作

填充字符不填默认为空格,若width小于字符长度,按原字符串输出,填充字符的长度不能超过1,若填充字符不为默认,那么width不得小于字符长度。startswith(字符串,start,end)start,end不写默认为整个字符串,判断这个参数指定的字符串中是否出现在字符串的起始位置。count(查找字符,start,end)(左闭右开)start,end不写默认为整个字符串。所有字母都是小写,不止可以处理英文,有的其他语言(如德语,阿拉伯语等)也行。center(width,填充字符)中间对齐,

zwy8021的博客 1810

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

字符串相关操作函数

使用字符串相关操作函数要先添加string.h头文件。

qq_57907966的博客 1162

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

字符串相关操作

④两个函数的参数形式也有区别的,reserve函数之后一个参数,即需要预留的容器的空间;resize函数可以有两个参数,第一个参数是容器新的大小,第二个参数是要加入容器中的新元素,如果这个参数被省略,那么就调用元素对象的默认构造函数。,因此,调用这个函数之后,就可以引用容器内的对象了,因此当加入新的元素时,用operator[]操作符,或者用迭代器来引用元素对象。当push_back的元素数量大于n的时候,会重新分配一个大小为2n的新空间。,再将原有的n的元素和新的元素放入新开辟的内存空间中。

jijlkl的博客 754

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

字符串与相关操作

一、字符串基础 1.什么是字符串(str) “”" 字符串是容器型数据类型,将单引号或者双引号作为容器的标志,元素不需要用逗号隔开:‘元素1元素2元素3…’ 字符串是不可变的(不支持增删改),字符串是有序的(支持下标操作) 字符串中的元素:只能是文本符号(所有计算机能表达出来的符号都可以作为字符串的元素),一个符号对应一个元素 字符串中每一个独立的元素又叫’字符’,python中只有字符的概念,没有字符对应的数据类型 “”" 空串 str1 = '' str2 ="" str3 = """""" print

idwhl的博客 265

字符串相关操作/字符串相关函数

### -代码块 ``` 以冒号作为开始,用缩进来划分相同的作用域,称之为代码块,代码块是一个整体,一个文件也可称代码块 作用域:作用的区域 ``` ### -流程控制 ``` (1)流程控制的定义 (2)流程控制的结构 ``` ### -分支结构 ``` 关键字:if elif else (1)分支结构的种类 (2)分支结构的特点 ``` ...

weixin_30707875的博客 129

字符串、字符编码、字符串相关操作及相关方法

字符串、字符编码、字符串相关操作及相关方法 什么是字符串 容器型数据类型: 将 ‘’、""、’’’ ‘’'作为容器标志 ​ 字符串不可变(不支持增删改),字符串有序(支持下标操作) ​ 元素:引号中单独的每个符号都是字符串的元素(又叫字符),字符可以是任何符号 ​ 字符分为两类:普通字符 转义字符(具有特殊意义的字符) 字符串有序(支持下标操作);不可变 1、下标操作 — 单个获取、切片、遍历 单个获取 string = 'Pyth

Lemon_Review的博客 610

字符串相关的基本操作

toString()

weixin_48051871的博客 1818

python中字符串相关操作

1.’\n’表示换行 2.’\t’为制表符 3.字符串的拼接,可以直接用“+”来完成 4.字符串的重复,用“*”实现 5.字符串的切片提取 6.字符串常用的函数 len()函数,用来获取字符串的长度 split()函数,分割字符串,默认情况下按空格来分割 strip()去掉字符串前后多余的空格 upper()函数,把字符串中的字母变成大写 lower()函数,把字符串中的字母变...

weixin_38324954的博客 135

Python(字符串)相关方法及操作

详细的字符串相关函数及方法解读

qq_53136950的博客 1600

字符串与其相关操作

字符串、输入输出缓存区、字符串相关操作(复制、比较等)

weixin_56273520的博客 176

Java基础3-字符串及相关操作

Java没有内置的字符串类型,而是在标准Java类库中提供了一个预定义类String,这就涉及到Java变量类型的引用数据类型,包括之前提及的接口和枚举类型,都是引用数据类型,它更像C++中的char*指针。

spy47_的博客 845

C++字符串相关操作

建议先看着代码自己想一下输出结果,再和运行结果比较一下。

a1141311的博客 397

Python基础第四课——字符串的相关操作

上一篇文章中,我们讲了python的条件语句和循环语句这两个非常重要的语法,这篇文章呢来讲解在python中有关字符串的相关操作。在系列文章目录中列出了我python专栏中的其他文章,如果感兴趣的话呢,可以订阅我的专栏或者在我的主页查看前面发布的文章。以上就是今天要讲的内容了,这篇文章实际整理出来的内容比我预想的要多很多,所以写的时间长了些,发布的比较晚了,希望这篇文章能对你有所帮助。

liyibowen2006的博客 2488
上一篇: 第二代增强cmod
下一篇: jco接口开发(java服务端代码)
Real_feeling5
博客等级 码龄14年 4粉丝 13原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值