【发布时间】:2021-07-29 20:02:36
【问题描述】:
假设我有一个很长的字符串longString 和一个更短的子字符串substring。我想在longString 中找到substring 的nth 出现的第一个字符的索引。换句话说,假设substring = "stackoverflow",我想在longString中找到"stackoverflow"的第n次出现,并找到substring的第一个字符的索引(即字母s)。
例子:
longString = "stackoverflow_is_stackoverflow_not_stackoverflow_even_though_stackoverflow"
substring = "stackoverflow"
n = 2
因此,在上面的示例中,s 在第二次出现"stackoverflow" 中的索引为 17。
我想找到一种高效且快速的方法。
【问题讨论】:
-
请注意,搜索字符串可能与自身重叠,例如
abcxyzabc,因此您需要决定如何计算abcxyzabcxyzabcxyzabc中的搜索,即忽略重叠部分,还是计算它? -
@Tom Karzes 在我目前的情况下,我想忽略。