REGEX替换String中的多发事件

2020-08-20 22:21发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)专家们, 我正在使用REST调...

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

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


专家们,

我正在使用REST调用通过URL获取.CSV文件。 我得到的输出是字符串格式。

EG:测试用户,美国,现金," 4,000.00",0.00,0.00," 4,000.00",0.00,0.00," 4,000.00",0.00,0.00

我的要求是在多个实例之间使用REGEX在"" 之间用逗号替换(,)

我正在寻找的输出 :testuser,USA,CASH ,,, " 4000.00" ,0.00,0.00," 4000.00" ,0.00,0.00," 4000.00" ,0.00,0.00

6条回答
木偶小白
2020-08-20 23:16

下面将看到一个正则表达式,该正则表达式仅替换双引号内数字的逗号:

 data(lv_result)= replace(val =  | testuser,USA,CASH,"," 4,000.00",0.00,0.00," 4,000.00",0.00,0.00," 4,000.00",0.00,0.00 |
                                regex = |(" [0-9] *)(,)([0-9。] *")| 与= | $ 1 $ 3 |  occ = 0)。
 

正则表达式可用于3个捕获组。 第二个捕获组代表逗号。 在用于替换的值(带有参数)中,未提及第二个捕获组,因此逗号从最终字符串中删除。

考虑到您必须多次执行替换命令 对于相同的字符串,当您拥有更大的数字时(例如,当您拥有数以百万计时是两次-因为数字中有两个逗号;当您有十亿时则是三次)。 当您知道CSV传送中可以达到的最大数目时,可以设置一个字符串的替换执行次数。

一周热门 更多>