擅长:python、mysql、java
<p>不是说我会在生产环境中使用它,而是为了学术挑战:</p>
<pre><code>import re
string = """Starters
Salad with Greens 14.00
Salad Goat Cheese 12.75
Mains
Pizza 12.75
Pasta 12.75"""
rx = re.compile(r'^(Starters|Mains)', re.MULTILINE)
result = "\n".join(["{}\t{}".format(category, line)
for parts in [[part.strip() for part in rx.split(string) if part]]
for category, dish in zip(parts[0::2], parts[1::2])
for line in dish.split("\n")])
print(result)
</code></pre>
<p>这就产生了</p>
<pre><code>Starters Salad with Greens 14.00
Starters Salad Goat Cheese 12.75
Mains Pizza 12.75
Mains Pasta 12.75
</code></pre>