擅长:python、mysql、java
<p>您可以在此处使用<code>re.sub</code>作为单行程序解决方案:</p>
<pre><code>string = "insulin MixTARD 30/70 - inJECTable 20 unit(s) SC (SubCutaneous) - Hypoglycaemia Protocol if Blood Glucose Level (mmol) < 4 - Call Doctor if Blood Glucose Level (mmol) > 22"
output = re.sub(r'^([^-]+?-[^-]+?)(?=\s*-).*$', '\\1', string)
print(output)
</code></pre>
<p>这张照片是:</p>
<pre><code>insulin MixTARD 30/70 - inJECTable 20 unit(s) SC (SubCutaneous)
</code></pre>
<p>正则表达式的解释:</p>
<pre><code>^ from the start of the input
( capture
[^-]+? all content up to
- the first hyphen
[^-]+? all content up, but not including
) end capture
(?=\s*-) zero or more whitespace characters followed by the second hyphen
.* then match the remainder of the input
$ end of the input
</code></pre>