擅长:python、mysql、java
<p>您的问题是严格按照regex来表达的,但是如果您愿意使用<a href="https://en.wikipedia.org/wiki/Recursive_descent_parser" rel="nofollow">recursive descent parser</a>(例如,<a href="http://pyparsing.wikispaces.com/" rel="nofollow">^{<cd1>}</a>),那么许多需要regex专业知识的事情就会变得非常简单。在</p>
<p>例如,在这里你要的是</p>
<pre><code>from pyparsing import *
p = Suppress(Literal('import')) + commaSeparatedList
>>> p.parseString('import pandas, os, sys').asList()
['pandas', 'os', 'sys']
>>> p.parseString('import pandas, os').asList()
['pandas', 'os']
</code></pre>
<hr/>
<p>这可能是个人品味的问题,但对我来说</p>
^{pr2}$
<p>也比正则表达式更直观。在</p>