在apap中使用regexp

2020-08-19 02:14发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我写了一小段代码来了解regexp的工作原理,在这里我有一个内部表,只有一个字段,

该字段包含一个字符串,我想检查字符串的末尾是否有'=',然后从内部表中删除该记录。

现在我已经测试了'[=] $','(== $','\ = $','= $',但是这些似乎都不起作用,字符串中的单词之间可以有空格,请 帮我解决这个问题。

在wa_table-field中查找'= $'。
 如果sy-subrc eq 0。
 删除i_table。
 endif。

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我写了一小段代码来了解regexp的工作原理,在这里我有一个内部表,只有一个字段,

该字段包含一个字符串,我想检查字符串的末尾是否有'=',然后从内部表中删除该记录。

现在我已经测试了'[=] $','(== $','\ = $','= $',但是这些似乎都不起作用,字符串中的单词之间可以有空格,请 帮我解决这个问题。

在wa_table-field中查找'= $'。
 如果sy-subrc eq 0。
 删除i_table。
 endif。
付费偷看设置
发送
6条回答
三十六小时_GS
1楼 · 2020-08-19 02:52.采纳回答

嘿,

您不是在语句(?)中缺少" REGEX"-像这样:

查找正则表达式'yourregexhere'IN变量。

RegExr上的正则表达式示例: https://regexr.com/3gjtt (用您的 '='符号)

如果与您的字段中的等号无关紧要,则可以尝试使用" CS"( ABAP文档)。

如果您想尝试一下,可能会在SAP系统上收到以下有关"玩具"的报告: https://archive.sap.com/documents/docs/DOC-10291

-DEMO_REGEX_TOY

-DEMO_REGEX

希望其中一些可以帮助您。

最好的问候

Marco

bbpeas
2楼-- · 2020-08-19 02:53

在...中找到正则表达式'= $'。

宇峰Kouji
3楼-- · 2020-08-19 02:42

使用SE38报告DEMO_REGEX_TOY在各种测试中测试您的REGEX表达式 数据,因此如果不确定regex语法并想尝试一下并确保其有效,则不必在调试器中执行此操作。

"对于表达式,您不是要查找正则表达式
 "但是,您实际上是在寻找字符组合= $
 在wa_table字段中查找'= $'。

 "如果在表达式前输入REGEX,您将获得所需的内容
 在wa_table-field中查找正则表达式'= $'。

 "以ArneBücker为例,FIND的结果为'same'(sy-subrc = 0)
 "但是,替换将有所不同:
 "正如您真正在EOL处找到=一样,而Arne则找到了直到EOL处=为止的整行
 "(请参见正则玩具报告中带有两个示例的上述屏幕截图)
 在wa_table-field中查找正则表达式'。* \ = $'。
落灬小鱼
4楼-- · 2020-08-19 02:47

Mohd Ameen Bari , 请跟进您提出的问题。

  • 评论答案或您的问题是否还有未解决的问题。
  • 否则将答案标记为接受,如果它可以帮助您解决问题
  • 或发布您自己的答案并接受 如果您自己找到了另一个有用的解决方案
  • ,或者将您的问题重定向到另一个相关且对解决您的问题有用的问题
  • 最后,请关闭您的问题
空代码
5楼-- · 2020-08-19 02:31

嗨,

尝试使用以下表达式:

在wa_table-field中查找正则表达式'。* \ = $'。

最好的问候

Arne

zhangjiyang1323
6楼-- · 2020-08-19 02:47
Mohd Ameen Bari Michael在他的回答中解释了。*(注意:\不 t表示强制性的,它只是一个转义字符,这意味着下一个字符将被解释为原始字符,但是它没有用,因为=不是特殊字符,因此不需要转义; \ *是一个很好的例子 的\用法,因为*是特殊字符)请阅读正则表达式文档,尤其是ABAP文档中的

一周热门 更多>