#5. 字符串查找与字符提取

    ID: 5 Type: Default 1000ms 256MiB Tried: 0 Accepted: 0 Difficulty: (None) Uploaded By: Tags>codingbatString-2gesp4字符串算法复杂度

字符串查找与字符提取

提取单词前后字符

题目背景

在一个字符串处理的场景中,你需要从一个长字符串中识别出特定单词的出现位置,并提取这些单词前后的字符。

题目描述

给定一个主字符串和一个非空的单词字符串,返回一个新字符串,该新字符串由主字符串中每次出现给定单词时,其紧邻的前一个字符和紧邻的后一个字符组成。如果单词前面或后面没有字符,则忽略这种情况。一个字符如果位于两个单词之间,可能会被包含两次。

输入格式

输入以如下格式从标准输入中给出。

S W

其中 S 是主字符串,W 是单词字符串。SW 之间用一个空格分隔。

输出格式

输出以如下格式输出到标准输出中。

result_string

其中 result_string 是根据题目要求提取出的字符组成的新字符串。

样例

abcXY123XYijk XY
c13i
XY123XY XY
13
XY1XY XY
11

样例解释

样例 1: 主字符串 S = "abcXY123XYijk",单词字符串 W = "XY"

  1. 第一个 XY 出现在索引 3。它前面的字符是 'c',后面的字符是 '1'。当前结果为 "c1"。
  2. 第二个 XY 出现在索引 8。它前面的字符是 '3',后面的字符是 'i'。最终结果为 "c13i"。

样例 2: 主字符串 S = "XY123XY",单词字符串 W = "XY"

  1. 第一个 XY 出现在索引 0。它前面没有字符。后面的字符是 '1'。当前结果为 "1"。
  2. 第二个 XY 出现在索引 5。它前面的字符是 '3'。后面没有字符。最终结果为 "13"。

样例 3: 主字符串 S = "XY1XY",单词字符串 W = "XY"

  1. 第一个 XY 出现在索引 0。它前面没有字符。后面的字符是 '1'。当前结果为 "1"。
  2. 第二个 XY 出现在索引 3。它前面的字符是 '1'。后面没有字符。最终结果为 "11"。

数据范围

每个测试用例的时间限制为 1 秒,内存限制为 1024 KiB。