我想知道是否存在一些正则表达式或可以用来删除实例的示例,这些实例中我有3个字母,后跟一个数字?
例如,我有这个语料库
c = [CLE2 - Single Smalls station 117,
HOU2 - mathdenn,
[SAT2] Pack Singles > Line 7 > Station 04 Kiosk Ticket - ZT410 Shipping Label Not Printing Correcly,
[HOU2] Multiple GW Stations Down in AFE2]
我想应用一些函数,然后返回
c = [Single Smalls station 117
- mathdenn,
Pack Singles > Line 7 > Station 04 Kiosk Ticket - ZT410 Shipping Label Not Printing Correcly
Multiple GW Stations Down in ]
寻找完美的pythonic方法来实现这一目标。我在网上稍微通读了正则表达式,但没有找到一种方法来指定要删除的实例,该实例中我们有3个字符后跟一个数字,因此我不会说这回答了我的问题。
我试图做这样的事情:
regex = re.compile('[a-z][0-9]')
regex.findall(corpus[0])
但是这只会返回实例,其中我们有一个字符,后跟一个数字。也许对此有某种修改?
答案 0 :(得分:1)
这是Python方式:
import re
c = '''[CLE2 - Single Smalls station 117,
HOU2 - mathdenn,
[SAT2] Pack Singles > Line 7 > Station 04 Kiosk Ticket - ZT410 Shipping Label Not Printing Correcly,
[HOU2] Multiple GW Stations Down in AFE2]'''
for substr in re.findall(r'\W([A-Z][A-Z][A-Z]\d)\W', c):
c = c.replace(substr, '')
c = c.replace('[]', '')
print(c)