擅长:python、mysql、java
<p>具有特定正则表达式模式的方法:</p>
<pre><code>import re
strings = ['abc1235abc53abcXX', '123abc098YXabc']
pat = re.compile(r'(?:abc|^)(.+?)(?=abc|$)') # prepared pattern
for s in strings:
items = pat.findall(s)
print(items)
# further processing
</code></pre>
<p>输出:</p>
<pre><code>['1235', '53', 'XX']
['123', '098YX']
</code></pre>
<hr/>
<ul>
<li><code>(?:abc|^)</code>-匹配<code>abc</code>子字符串或<em>字符串开头的未捕获组</li>
<li><code>(.+?)</code>-捕获组以尽可能少地匹配任何字符序列</li>
<li><code>(?=abc|$)</code>-lookahead肯定断言,确保前面匹配的项后面紧跟着<code>abc</code>序列或字符串的<em>结尾<code>$</code></li>
</ul>