擅长:python、mysql、java
<p>您可以为正则表达式添加一个正向的前瞻性,要求末尾的单词至少包含一个数字,以便将其删除:<code>(?=\D*\d)</code>。这将阻止它删除不包含数字的普通单词。你知道吗</p>
<p>完整程序:</p>
<pre><code>#!/usr/bin/env python3
import re
texts = [
'asus zenfone 3s max zc521tl',
'asus zenfone max plus (m1) zb570tl',
'asus zenfone max pro (m1) zb601kl/zb602k',
'nokia 3.1 c',
'nokia 3',
'asus zenfone 3 zoom ze553k',
'asus zenfone 3 deluxe zs570kl',
'blackberry keyone',
'htc explorer',
'lg tribute',
'acer liquid z520',
]
for text in texts:
print(re.sub(r'(?=\D*\d)[a-zA-Z0-9/]{5,}$', '', text))
</code></pre>
<p>它输出:</p>
<pre><code>asus zenfone 3s max
asus zenfone max plus (m1)
asus zenfone max pro (m1)
nokia 3.1 c
nokia 3
asus zenfone 3 zoom
asus zenfone 3 deluxe
blackberry keyone
htc explorer
lg tribute
acer liquid z520
</code></pre>