给出一个字符串。请对字符串中的每个单词加倍,以符号“ a”开头。用空格符号分隔的单词。例如:
输入:我的公寓里有一个苹果输出:我的公寓里有一个苹果苹果
有多种方法可以做到这一点。
[您可以使用SPLIT string AT space INTO TABLE DATA(tokens)
将字符串标记为单词,然后使用LOOP AT tokens
将单词重新组合为新字符串,如果to_lower( token(1) ) = 'a'
,则标记加倍。
或者,您可以使用正则表达式匹配以a
或A
开头的所有单词,然后使用匹配位置重复匹配的单词。不过,您必须自己制定正则表达式。
您还可以构建一个自动机,该自动机先看一个字符,如果遇到以“ a”开头的单词,则达到特定状态,然后克隆匹配的单词。不过,这听起来似乎有点过头,但它更适合于更复杂的情况,例如构建解析器。
从业务角度看,您的问题听起来毫无意义,所以我认为这是家庭作业中的问题。因此,我没有提供完整的,有效的答案,而是仅概述了解决问题的可能方法。
根据How Do I Ask and Answer Homework Questions?,您不应简单地转发这些问题,而应提供您已经尝试过的内容以及遇到麻烦的特定位置。否则,人们将投票结束您的问题,而他们确实已经开始这样做。