我有以下字符串s1 = 'XXX-2 I LOVE : XXX XXX's2 = 'FOOD : XXX's3 = 'XXX-FOOD : XXX我想要以下s1 = '2 I LOVE's2 = 'FOOD's3 = 'FOOD's2只有1个定界符,:而s1 & s3只有2个- & :我想将所有内容都保留在两个定界符之间,- & :所以我使用以下内容,\-(.*?)\:但我没有得到s2如果我使用以下内容,\w+\-?(.*?)\:我会得到一切-我在regex上很糟糕,如果有人可以帮助我解决这个问题并提供理解regex的链接,我将不胜感激。
3 回答

眼眸繁星
TA贡献1873条经验 获得超9个赞
我们正在使用strip删除尾随空格。
s1 = re.sub(r'[^a-zA-Z0-9\s]+|X','',s1).strip()
s2 = re.sub(r'[^a-zA-Z0-9\s]+|X','',s2).strip()
s3 = re.sub(r'[^a-zA-Z0-9\s]+|X','',s3).strip()
2 I LOVE
FOOD
FOOD
添加回答
举报
0/150
提交
取消