【发布时间】:2021-05-24 15:42:15
【问题描述】:
假设我有这个字符串
'1. A4 1... d5 2. c4 2... Yf6 3. NP3 3... dxc4 4. BO3 4... BK4 5. e3 5... Bf3 6. Q3 6... e6 7. Bc4 7... B4 8. O-O 8... B3 9. b3 9... O-O 10. B3 10... Re8 11. Q7 1-0'
我想删除未附加到字母的数字,如果您滚动到最后,我也希望删除 1-0,所以像这样
['A4', 'd5', ..., 'O-O', ..., 'Q7']
所以我尝试了这个,
re.findall(r'(?:[^\W\d_]+\d|\d+[^\W\d_])[^\W_]*|[^\W\d_]+', text)
但是得到了这个,
['A4', 'd5', ..., 'O', 'O', ..., 'Q7']
所以它正在删除我想要的1-0 的-,但也删除了O-O。
【问题讨论】:
-
“它正在为
1-0删除-”是什么意思?不是删除了1-0的全部吗? -
请不要通过破坏您的帖子为他人增加工作量。通过在 Stack Exchange 网络上发帖,您已在 CC BY-SA 4.0 license 下授予 Stack Exchange 分发该内容的不可撤销的权利(即无论您未来的选择如何)。根据 Stack Exchange 政策,帖子的非破坏版本是分发的版本。因此,任何破坏行为都将被撤销。如果您想了解更多关于删除帖子的信息,请参阅:How does deleting work?
-
我复制了错误的东西,MY BAD 没有看到它
标签: python python-3.x regex