擅长:python、mysql、java
<p>如果您知道文本中不存在的字符,<code>'@'</code>这里是一种简单而快速的方法:</p>
<pre><code>s.replace('issome','is@some').split('@')
# ['Thisis', 'sometext andthisis', 'sometext']
</code></pre>
<p>测试:</p>
<pre><code>In [300]: %timeit s.replace('issome','is@some').split('@')
976 ns ± 21.6 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)
In [301]: %timeit regex.split(r"(?V1)(?<=is)(?=some)", s)
7.36 µs ± 145 ns per loop (mean ± std. dev. of 7 runs, 100000 loops each)
In [302]: %timeit re.findall(r'[\w\s]+?(?:is(?=some)|$)', s)
4.28 µs ± 97.5 ns per loop (mean ± std. dev. of 7 runs, 100000 loops each)
</code></pre>