我正在学习中间的python。
假设有一根绳子

astring = '[Embodied cognition - Wikipedia](https://en.wikipedia.org/wiki/Embodied_cognition)'

string.punctuation一起提取单词
from string import punctuation
for delimiter in punctuation:
    if delimiter in astring:
        astring = astring.replace(delimiter, ' ')

In [7]: astring
Out[7]: ' Embodied cognition   Wikipedia  https   en wikipedia org wiki Embodied cognition '

我试过使用map并且它有效
In [12]: a = map(astring.replace, punctuation, ' ')
In [14]: list(a)
Out[14]: [' Embodied cognition   Wikipedia  https   en wikipedia org wiki Embodied cognition ']

如何用其他先进技术解决这个问题?

最佳答案

您应该研究正则表达式(简称regex)。

import re

astring = '[Embodied cognition - Wikipedia](https://en.wikipedia.org/wiki/Embodied_cognition)'
re.sub(r'[^A-Za-z0-9]+', ' ', astring)
# returns:
' Embodied cognition Wikipedia https en wikipedia org wiki Embodied cognition '

08-19 21:30