擅长:python、mysql、java
<p>使用<code>re.sub</code>方法:</p>
<pre class="lang-sh prettyprint-override"><code>>>> import re
>>> test='k8s-configuration-int-mbus_config-int-mbus-deployment-db9c64cd-n4tww_central_6d499584'
>>> print (re.sub(r'(?i)-(?:[a-z]+\d[a-z\d]*|\d+[a-z][a-z\d]*)-.*', '', test))
k8s-configuration-int-mbus_config-int-mbus-deployment
</code></pre>
<p><a href="https://regex101.com/r/VoPYI4/2" rel="nofollow noreferrer">RegEx Demo</a></p>
<p><strong>正则表达式解释:</strong></p>
<ul>
<li><code>(?i)</code>:启用忽略大小写模式</li>
<li><code>-</code>:匹配连字符</li>
<li><code>(?:[a-z]+\d[a-z\d]*|\d+[a-z][a-z\d]*)</code>:匹配字母数字字符串</li>
<li><code>-</code>:匹配连字符</li>
<li><code>.*</code>:匹配字符串的其余部分</li>
</ul>