用于简单正则表达式的ABAP CX_SY_REGEX_TOO_COMPLEX

2020-08-15 12:48发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好, 我玩了一下正则表达式...

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

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


大家好,

我玩了一下正则表达式,并做了一个相对简单的正则表达式:

`('[^'] *'| [^ \。'] +)+ \。
 

我在网站上制作的,它在这里正常工作,但是当我在 ABAP,我得到了上面提到的简短转储。

这是我的代码:

 DATA(REGEX)=`('[^'] *'| [^ \。'] +)+ \.。
 DATA(IN)=`这是我的'第一个。 句子"。 这是另一个"句子"。 这是另一个。
 在字符模式结果数据(表)中查找正则表达式正则表达式的所有事件。
 

先谢谢您的问候!

6条回答
浮生未央
2020-08-15 13:23 .采纳回答

嗨,凯文

恐怕您的"简单"正则表达式对于ABAP来说有点太复杂了,因为您正试图从正则表达式中获取分组和子分组(=最终的" + \"部分。 文字中的要点)。 我猜您正在尝试通过查找"。"来识别所有句子。 但忽略了那些放在单括号之间的内容?

我还没有完全弄清楚,但是这个正则表达式可以找到所有出现的"。"。 忽略单个qoutes之间的内容。您可以从那里去,因为该表将为您提供字符串中的位置,而不会返回结果本身。

\。(?=((?:[^'] *'){2})* [^'] * $)

礼物

一周热门 更多>