擅长:python、mysql、java
<p><strong>备注:改用<a href="https://stackoverflow.com/a/26827344/298479">^{<cd1>} solution</a>!它更高效、更易读。</strong></p>
<hr/>
<p>您可以简单地在字符串上迭代并检查字符串(从给定字符开始)是否以“stop”单词开头:</p>
<pre><code>>>> s = 'joiskodposkfkfsdpsstopjisjijdjnsndsjijdstopisjidinsindistopskndishf'
>>> [pos for pos in range(len(s)) if s[pos:].startswith('stop')]
[18, 39, 55]
</code></pre>
<p>另一个选项是重复调用<code>s.find('stop', X)</code>,其中X是最后一个匹配的位置+1(如果从未匹配过,则为0)。</p>